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