在使用Qt Designer进行GUI设计时,一般常规的步骤都是差不多的,主要步骤包括新建显示窗口、在窗口上按照规划的布局放置组件、设置初始化组件的属性、定义信号和槽函数的连接,一般后三步是每增加一个组件就执行一轮。
一、新建一个Form窗口
通过File->New菜单打开新建窗口的界面,系统提供模板化的窗口和多种窗口类型供选择如图:
可以看到这些窗口都是QWidget基础上派生出来的,包含两类,上面为窗口模板,下面部分为单独的窗口组件,模板部分提供了两个带按钮的对话窗和一个不带按钮的对话窗、一个带菜单和toolbar的主窗口和一个纯窗口的Widget(对应QWidget类)五种窗口模板(其实最后一个Widget已经不是模板),窗口部分提供了十种不同风格的从QWidget类(Widget窗口组件)派生的不同类型的窗口。
二、规划布局组件
布局类组件包括布局组件、分隔组件,其中布局组件决定放置组件在窗口的方向和随窗口伸缩的伸缩模式。布局组件内本身还可以嵌套放置布局组件。在同一容器内(如布局组件、窗口)同级的布局组件之间是无缝隙的,如果要调整相邻组件之间的间隔,可以采用分隔组件。
三、窗口上放置组件
窗口创建并放置布局组件后,就可以从QtDesigner左侧剩余六大类子组件中拖拽图标放置到窗口上,根据应用需要决定是否放置容器类组件(Containers),然后放置各功能组件,包括按钮、数据项视图类、项组件类、输入组件类、显示类组件。
四、调整组件的属性
组件放置后,需要调整组件的各种属性,包括名字、位置、大小、颜色、字体,不同的组件有不同的属性。具体在每类组件介绍时再详细说明。
五、定义信号和槽函数的连接
信号和槽函数是Qt及PyQt中非常重要的机制,用于定义组件的事件和处理函数的对应关系,支持跨组件的信号和槽函数对应、支持一个槽函数对应多个信号,并支持在槽函数中获取信号发送者,还支持自定义信号。通过信号和槽函数的连接,就可以将界面操作动作以及一些隐含的事件与处理程序挂钩,使得信号得到响应从而实现界面与处理逻辑的分离和连接,分离是界面的设计和信号处理逻辑的分离,在界面上指定信号接收的对象以及该对象执行响应处理逻辑的函数名,但不具体实现响应逻辑,连接是支持信号和槽函数二者建立关联,这样就实现了界面和逻辑的分离。这些内容将在专门章节介绍。
完成以上五步工作后,基于Qt Designer的GUI设计就完成了,就可以应用《第15.7节 PyQt入门学习:PyQt5应用构建详细过程介绍》的方法来进行UI界面到代码的生成以及具体槽函数的实现等程序开发步骤。
博客地址:https://blog.csdn.net/LaoYuanPython
老猿Python博客文章目录:https://blog.csdn.net/LaoYuanPython/article/details/98245036