第19讲,Panedwindow 管理窗口布局的容器

Panedwindow 允许添加多个子组件,不需要使用pack,grid,place进行布局,它为每个子组件划分一个区域,你可以通过移动各个区域的分割线来改变区域的大小。

在创建Panedwindow时,你可以指定它是垂直布局还是水平布局,Panedwindow可以嵌入到另一个Panedwindow中。

现在,我们来设计一个布局,将界面分割成3部分,类似于下面的样子

想要实现这样的效果,首先创建一个水平的Panedwindow,然后加入一个label,再加入一个垂直布局的Panedwindow,在这个垂直布局的Panedwindow中,加入两个label

import tkinter as tk
from tkinter import *


window = tk.Tk()
window.title('PanedWindow')       # 设置窗口的标题
window.geometry('600x600')        # 设置窗口的大小


m1 = PanedWindow(window)          # 默认是左右分布的
m1.pack(fill=BOTH, expand=1)

left = Label(m1, text='标签1', bg='blue', width=20)
m1.add(left)

m2 = PanedWindow(orient=VERTICAL)
m1.add(m2)

top = Label(m2, text='标签2', bg='green', height=20)
m2.add(top)

bottom = Label(m2, text='标签3', bg='red')
m2.add(bottom)

window.mainloop()

最终效果图

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案