Python全栈开发:高阶编程
上QQ阅读APP看书,第一时间看更新

2.3 主窗口

主窗口是一个容器元素,可以在其上添加控件,并呈现给用户。

1.创建主窗口对象

可以通过Tkinter模块中的Tk类创建主窗口对象,用于完成主窗口的创建,其语法格式如下:

2.主窗口对象的相关方法

1)title()方法

该方法用于设置主窗口的标题,其语法格式如下:

其中,参数string表示主窗口的标题。

2)iconbitmap()方法

该方法用于设置和获取主窗口的图标,其语法格式如下:

其中,参数bitmap表示主窗口的图标。

3)geometry()方法

该方法用于调节主窗口的尺寸和位置,其语法格式如下:

其中,参数newGeometry表示主窗口尺寸和位置的特定格式,该格式为widthxheight±x±y,width和height表示主窗口的宽和高,xy表示主窗口左上角的x轴坐标和y轴坐标。

4)resizable()方法

该方法用于设置主窗口能否最大化,其语法格式如下:

其中,参数width表示主窗口横向能否最大化;参数height表示主窗口纵向能否最大化。

5)maxsize()方法

该方法用于设置和获取主窗口的最大尺寸,其语法格式如下:

其中,参数width表示主窗口的宽度;参数height表示主窗口的高度。

6)protocol()方法

该方法用于将回调函数与相应的规则进行绑定,其语法格式如下:

其中,参数name表示规则,包括WM_DELETE_WINDOW(窗口被关闭时)、WM_SAVE_YOURSELF(窗口被保存时)和WM_TAKE_FOCUS(窗口获得焦点时);参数func表示回调函数。

7)mainloop()方法

该方法用于主事件循环,其语法格式如下:

3.创建主窗口

创建主窗口有两种方式,分别为使用Tk类和Tk类的子类。

1)使用Tk类创建主窗口

示例代码如下:

上面代码的运行结果如图2-2所示。

图2-2 通过Tk类创建主窗口

2)使用Tk类的子类创建主窗口

示例代码如下:

上面代码的运行结果如图2-3所示。

图2-3 使用Tk类的子类创建主窗口