Tkinter PanedWindow weight参数

Tkinter PanedWindow weight参数

若是更改了窗口的宽度,将看到最右边的面板(Right Pane)放大或缩小,如下所示。

Tkinter PanedWindow weight参数

在tkinter.ttk模块中,若执行add(子对象,options),在options字段可以增加weight参数,weight代表更改窗口宽度时每个Pane更改的比例,如果插入三个子对象LabelFrame时weight都是1,代表放大或缩小窗口时,三个子对象是相同比例的。

需留意在add( )方法内使用weight参数时需要导入thikter.ttk。

示例1

在插入三个LabelFrame对象时增加weight=1。在执行时若是放大或缩小窗口,可以看到三个LabelFrame子对象是按相同比例更改的。注意程序第3行是导入tkinter.ttk,这是必需的否则程序会有编译错误。

from tkinter import *
from tkinter.ttk import *

root = Tk()
root.title("apidemos.com")
# pw = PanedWindow(root,orient=HORIZONTAL)  # 创建PanedWindow对象
pw = PanedWindow(orient=HORIZONTAL)         # 创建PanedWindow对象

leftframe = LabelFrame(pw,text="Left Pane",width=120,height=150)
pw.add(leftframe,weight=1)                  # 插入左边LabelFrame
middleframe = LabelFrame(pw,text="Middle Pane",width=120)
pw.add(middleframe,weight=1)                # 插入中间LabelFrame
rightframe = LabelFrame(pw,text="Right Pane",width=120)
pw.add(rightframe,weight=1)                 # 插入右边LabelFrame

pw.pack(fill=BOTH,expand=True,padx=10,pady=10)

root.mainloop()

输出:

Tkinter PanedWindow weight参数

如果三个LabelFrame子对象设置不同的weight,以后更改窗口大小时,彼此会因weight有不同的影响。

示例2

设置更改窗口大小时Left Pane的weight=2、Middle Pane的weight=2、Right Pane的weight=1,这代表更改宽度时,更改比例分别是2:2:1。请读者留意第11、13、15行的weight设置。

from tkinter import *
from tkinter.ttk import *

root = Tk()
root.title("apidemos.com")
# pw = PanedWindow(root,orient=HORIZONTAL)  # 创建PanedWindow对象
pw = PanedWindow(orient=HORIZONTAL)         # 创建PanedWindow对象

leftframe = LabelFrame(pw,text="Left Pane",width=120,height=150)
pw.add(leftframe,weight=2)                  # 插入左边LabelFrame
middleframe = LabelFrame(pw,text="Middle Pane",width=120)
pw.add(middleframe,weight=2)                # 插入中间LabelFrame
rightframe = LabelFrame(pw,text="Right Pane",width=120)
pw.add(rightframe,weight=1)                 # 插入右边LabelFrame

pw.pack(fill=BOTH,expand=True,padx=10,pady=10)

root.mainloop()

输出:

Tkinter PanedWindow weight参数

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程