tkinter -- Frame

发布时间:2018-06-06 18:54:02编辑:Run阅读(4963)

    Frame 就是屏幕上的一块矩形区域,多是用来作为容器(container)来布局窗体

    创建Frame

    代码:

    import tkinter as tk
    
    root = tk.Tk()
    # 以不同的颜色区别各个frame
    for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']:
        # 注意这个创建frame的方法与其它创建控件的方法不同,第一个参数不是root
        tk.Frame(height=20, width=400, bg=i).pack()
    root.mainloop()

    效果:

    blob.png

    添加不同颜色的 Frame,大小均为20*400



    向 Frame 中添加 Widget

    代码:

    import tkinter as tk
    
    root = tk.Tk()
    fm = []
    # 以不同的颜色区别各个frame
    for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']:
        # 注意这个创建frame的方法与其它创建控件的方法不同,第一个参数不是root
        fm.append(tk.Frame(height=20, width=400, bg=i))
    
    # 向下面的Frame中添加一个Label
    tk.Label(fm[1], text='hello world').pack()
    for i in fm:
        i.pack()
    root.mainloop()

    结果:

    blob.png

    Label 被添加到上面的 Frame 中了,而不是 root 默认的最上方



    Tk8.4以后 Frame 又添加了一类 LabelFrame,添加了 Title 的支持

    代码:

    import tkinter as tk
    
    root = tk.Tk()
    
    # 以不同的颜色区别各个frame
    for i in ['red', 'blue', 'yellow', 'green', 'white', 'black']:
        # 可以使用 text 属性指定 Frame 的 title
        tk.LabelFrame(height=50, width=300, text=i,bg=i).pack()
    
    root.mainloop()

    效果:

    blob.png

关键字

上一篇: tkinter -- OptionMenu

下一篇: tkinter -- PanedWindow