• Python GUI tkinter窗口视窗学习3


    Python GUI tkinter窗口视窗学习3

    # test9
    import tkinter as tk
    window = tk.Tk()
    window.title('my test9')
    window.geometry('700x400')
    l = tk.Label(window,bg = 'green',width = 20,text = 'empty')
    l.pack()
    def print_selection():
    	if (var1.get() == 1) & (var2.get() == 0):     # 如果选中第一个选项,未选中第二个选项
    		l.config(text='I love only Python ')
    	elif (var1.get() == 0) & (var2.get() == 1):   # 如果选中第二个选项,未选中第一个选项
    		l.config(text='I love only go')
    	elif (var1.get() == 0) & (var2.get() == 0):   # 如果两个选项都未选中
    		l.config(text='I do not love either')
    	else:
    		l.config(text='I love both')             # 如果两个选项都选中
    # 定义两个checkbutton选项并放置  
    # 存放选择值
    var1 = tk.IntVar()
    var2 = tk.IntVar()
    c1 = tk.Checkbutton(window,text = 'python',variable=var1,onvalue = 1,offvalue = 0,command = print_selection)
    c2 = tk.Checkbutton(window,text = 'go',variable=var2,onvalue = 1,offvalue = 0,command = print_selection)
    c1.pack()
    c2.pack()
    window.mainloop()
    

    import tkinter as tk  # 使用Tkinter前需要先导入
     
    # 第1步,实例化object,建立窗口window
    window = tk.Tk()
     
    # 第2步,给窗口的可视化起名字
    window.title('My Window')
     
    # 第3步,设定窗口的大小(长 * 宽)
    window.geometry('500x300')  # 这里的乘是小x
     
    # 第4步,在图形界面上创建一个标签label用以显示并放置
    l = tk.Label(window, bg='green', fg='white', width=20, text='empty')
    l.pack()
     
    # 第6步,定义一个触发函数功能
    def print_selection(v):
        l.config(text='you have selected ' + v)
    # 第5步,创建一个尺度滑条,长度200字符,从0开始10结束,以2为刻度,精度为0.01,触发调用print_selection函数
    s = tk.Scale(window, label='try me', from_=0, to=10, orient=tk.HORIZONTAL, length=200, showvalue=0,tickinterval=2, resolution=0.01, command=print_selection)
    s.pack()
     
    # 第7步,主窗口循环显示
    window.mainloop()
    

    # test11
    import tkinter as tk
    window = tk.Tk()
    window.title('my test')
    window.geometry('700x400')
    # 用tkinter只能装入GIF图片,也就是扩展名是.gif的图片文件
    canvas = tk.Canvas(window,bg = 'green',height=350,width =700)
    image_file = tk.PhotoImage(file = 'pic.gif')
    # 图片锚定点(n图片顶端的中间点位置)放在画布(350,0)坐标处  (最上方的中间位置)
    image = canvas.create_image(350,0,anchor = 'n',image=image_file) 
    # 画图形
    x0,y0,x1,y1 = 100,100,150,150 
    line = canvas.create_line(x0,y0,x1,y1)
    oval = canvas.create_oval(x0+120, y0+50, x1+120, y1+50, fill='yellow')  # 画圆 用黄色填充
    arc = canvas.create_arc(x0, y0+50, x1, y1+50, start=0, extent=180)      # 画扇形 从0度打开收到180度结束
    rect = canvas.create_rectangle(0, 30, 40, 30+20)                  # 画矩形正方形
    canvas.pack()
    window.mainloop()
    

    # test12
    import tkinter as tk
    window = tk.Tk()
    window.title('my test')
    window.geometry('700x400')
    l = tk.Label(window,text = '     ',bg = 'green')
    l.pack()
    counter = 0
    def do_job():
    	global counter
    	l.config(text='do '+ str(counter))
    	counter += 1
    # 创建一个菜单栏(窗口上方)
    menubar = tk.Menu(window)
    # 创建一个file菜单项,默认不下拉
    filemenu = tk.Menu(menubar,tearoff = 0)
    menubar.add_cascade(label = 'File',menu = filemenu) 
    filemenu.add_command(label='New', command=do_job)
    filemenu.add_command(label='Open', command=do_job)
    filemenu.add_command(label='Save', command=do_job)
    filemenu.add_separator()    # 添加一条分隔线
    filemenu.add_command(label='Exit', command=window.quit) # 用tkinter里面自带的quit()函数
    
    editmenu = tk.Menu(menubar, tearoff=0)
    # 将上面定义的空菜单命名为 Edit,放在菜单栏中,就是装入那个容器中
    menubar.add_cascade(label='Edit', menu=editmenu)
     
    # 同样的在 Edit 中加入Cut、Copy、Paste等小命令功能单元,如果点击这些单元, 就会触发do_job的功能
    editmenu.add_command(label='Cut', command=do_job)
    editmenu.add_command(label='Copy', command=do_job)
    editmenu.add_command(label='Paste', command=do_job)
    # 二级菜单
    submenu = tk.Menu(filemenu) # 和上面定义菜单一样,不过此处实在File上创建一个空的菜单
    filemenu.add_cascade(label='Import', menu=submenu, underline=0)
    submenu.add_command(label='Submenu_1', command=do_job)
    window.config(menu=menubar)
    window.mainloop()
    

  • 相关阅读:
    Ceph性能优化
    查看linux中的TCP连接数
    从 PC 卸载 Office
    VDI数据恢复
    xencenter迁移云主机方法
    深入解析UUID及其应用(转载)
    XenServer master主机的作用
    解决CentOS下可以ping通ip ping不通域名
    利用Powershell查询AD中账号属性
    创建进程的第二种方法,以后很多都用这个方法。
  • 原文地址:https://www.cnblogs.com/serendipity-my/p/13720479.html
Copyright © 2020-2023  润新知