接下来我们将学习设置GUI程序最基本的属性设置:组件尺寸、组件选项、窗口标题,演示的GUI程序是1.1中的“hello world”程序

组件尺寸调整

1.1中的“hello world”程序展现的效果并不理想,标签是紧贴上层父窗口,没有随着放大而调整居中,我们可以通过一组pack选项来改进显示效果,使标签随着窗口放大而调整居中,代码如下:

from tkinter import *
root = Tk()
Label(root, text="Hello GUI World!").pack(expand=YES, fill=BOTH)
root.mainloop()

效果如图所示

python pyautogui 多显示器 python gui 全屏_窗口标题

当组件使用pack方法时,可以设定组件是否应该占据所有空间,如果可以扩展,它应该以什么拉伸方式来占据。默认设置是组件不随父组件的扩展而扩展。但脚本中的expand=YES和fill=BOTH设定允许标签随着父组件(主窗口)来扩展。

expand=YES选项

    要求打包几何管理器为组件扩展空间,通常可以是父组件中任何未被占用的空间

fill=BOTH

    可用来拉伸组件,使其充满分配空间

这两个选项组合在一起可产生不同的布局和尺寸调整效果,有时候只在主窗口容纳多个组件时候才会有明显得效果。如,只使用expand选项可以让组件居中,并显示在扩展的空间中,fill选项可以设定仅垂直拉伸fill=Y,仅水平拉伸fill=x,还是两者都拉伸fill=BOTH。

设置组件选项和窗口标题

在学完尺寸调整之后,我们接下来看一下如何设置组件选项和窗口标题

老规矩先上代码:

from tkinter import *
root = Tk()
Label(root, text="Hello GUI World!").pack(expand=YES, fill=BOTH)
root.title('BasicAttribute.py')
root.mainloop()

效果示意图:

python pyautogui 多显示器 python gui 全屏_ide_02

留意第四行调用了title方法,这个调用设置了在窗口标题栏显示的标签

目前在标签构造函数中设置文本关键字参数,我们可以让tkinter在标签上显示出想要的文字以外,我们还有两种方法可以进行组件的配置,先来通过代码来看一下如何实现的

方法一:

from tkinter import *
root = Tk()
wedget = Label()
wedget['text']="Hello GUI World!"
wedget.pack(side=TOP, fill=BOTH, expand=YES)
root.title('BasicAttribute.py')
root.mainloop()

text选项在标签创建后设置,方法是向组件指定文本关键字。加载的组件对象对操作做索引,这样一来,选项也可以用来做映射键,就像字典一样

方法二:

from tkinter import *
root = Tk()
wedget = Label()
wedget.config(text="Hello GUI World!")
wedget.pack(side=TOP, fill=BOTH, expand=YES)
root.title('BasicAttribute.py')
root.mainloop()

这一个方法是最常用的方法,在组件创建后,调用组件的config方法来进行组件选项设置。config方法可在组件创建后的任何时间调用,改变屏幕上组件的外观