一、Layouts
1、Vertical Layout 垂直布局,组件自动在垂直方向上分布
2、Horizontal Layout 水平布局,组件自动在水平方向上分布
3、Grid Layout 网格状布局,网格状布局大小改变时,每个网格的大小都改变
4、Form Layout 窗体布局,与网格状布局类似,但是只有最右侧的一列网格会改变大小
二、Spacers
1、Horizontal Spacer 一个用于水平分隔的空格,可以将多个组件水平分隔开,添加N个即隔开N个空格距离
2、Vertical Spacer 一个用于垂直分隔的空格,可以将多个组件垂直分隔开,添加N个即隔开N个空格距离
三、Buttons:
1、Push Button:按钮
setCheckable() 设置按钮是否已经被选中,如果设置True,则表示按钮将保持已点击和释放状态
toggle() 在按钮状态之间进行切换
setIcon() 设置按钮上的图标
setEnabled() 设置按钮是否可以使用,当设置为False时,按钮变成不可用状态,点击它不会发射信号
isChecked() 返回按钮的状态,返回值为True或者False
setDefault() 设置按钮的默认状态
setText() 设置按钮的显示文本
text() 返回按钮的显示文本
2、Tool Button: 工具操作相关的按钮,通常和QToolBar搭配使用。QToolButton通常不显示文本,而显示图标QIcon。
3、Radio Button: 单选按钮
4、Check Box: 复选框按钮、多选按钮
setChecked() 设置复选框的状态,设置为True表示选中,False表示取消选中的复选框
setText() 设置复选框的显示文本
text() 返回复选框的显示文本
isChecked() 检查复选框是否被选中
setTriState() 设置复选框为一个三态复选框
setCheckState() 三态复选框的状态设置,具体设置可以见下表
- Qt.Checked 0 组件被选中
- Qt.PartiallyChecked 1 组件被半选中
- Qt.Unchecked 2 组件没有被选中(默认)
5、CommandLinkButton: 命令链接按钮,命令链接按钮不应单独使用,而应作为向导和对话框中单选按钮的替代选项Dialog
6、Button Box: 按钮盒子
四、items view
1、List View
2、Tree View
3、Table View
4、Column View
5、Undo View
五、items widget
1、List widget
2、Tree widget
3、Table widget
六、Containers
为了将界面上的各个组件的分布设计得更加美观,经常使用一些容器类组件,如 GroupBox、
TabWidget、Frame 等。
1、Group Box:用作不同区块的容器
2、Scroll Area
3、Tool Box
4、Tab Widget:用作不同页的分页按钮
5、Stacked Widget/6、Frame
7、Widget
8、MDI Area
9、Dock Widget
七、Input Widgets
1、Combo Box 下拉框列表。用于输入指定枚举值。
2、Font Combo Box
3、Line Edit:单行文本框,输入单行字符串。控件对象常用函数为Text() 返回文本框内容,用于获取输入。setText() 用于设置文本框显示。
setAlignment() 按固定值方式对齐文本
- Qt.AlignLeft:水平方向靠左对齐
- Qt.AlignRight:水平方向靠右对齐
- Qt.AlignCenter:水平方向居中对齐
- Qt.AlignJustify:水平方向调整间距两端对齐
- Qt.AlignTop:垂直方向靠上对齐
- Qt.AlignBottom:垂直方向靠下对齐
- Qt.AlignVCenter:垂直方向居中对齐
setEchoMode() 设置文本框的显示格式,允许输入的文本显示格式的值可以是:
- QLineEdit.Normal:正常显示所输入的字符,此为默认选项
- QLineEdit.NoEcho:不显示任何输入的字符,常用于密码类型的输入,且长度保密
- QLineEdit.Password:显示与平台相关的密码掩饰字符,而不是实际输入的字符
- QLineEdit.PasswordEchoOnEdit:在编辑时显示字符,负责显示密码类型的输入
-
setPlaceholderText() 设置文本框显示文字
setMaxLength() 设置文本框所允许输入的最大字符数
setReadOnly() 设置文本为只读
setText() 设置文本框的内容
text() 返回文本框的内容
setDragEnable() setDragEnable()
selectAll() 全选
setFocus() 获得焦点
setInputMask() 设置掩码
setValidator()
设置文本框的验证器(验证规则),将限制任意可能输入的文本,可用的校验器为
QIntValidator:限制输入整数
QDoubleValidator:限制输入浮点数
QRegexpValidator:检查输入是否符合正则表达式
4、TextEdit 多行文本框,输入多行字符串。
setText(a) # 设置文本
append(a) # 追加文本
toPlainText() # 获取文本
5、Plain Text Edit
6、Spin Box 计数器 用于处理整数值
7、Doubble Spin Box 计数器,于处理浮点值
8、Time Edit
9、Date Edit
10、Date/Time Edit
11、Dial
12、Horizontal Scroll Bar
13、Vertical Scroll Bar
14、Horizontal Slider 水平滑动条
15、Vertical Slider 垂直滑动条
16、Key Sequence Edit
八、Display Widgets:
1、Label:用于信息提示,显示图片、网页链接、不可编辑的文本
setText():显示内容
text() # 读取内容
2、 Text Browser:显示文本控件。
setText() # 设置文本
append() # 追加文本
toPlainText() # 获取文本
3、Graphics View
4、Calendar Widget
5、LCD Number
6、Progress Bar 进度条
7、Horizontal Line
8、Vertical Line
9、OpenGL Widget
九、其它
1、QMessageBox 用于提示信息, 如警告、询问和严重出错等。
2、QFileDialog 用于打开文件和保存文件,可以设置过滤器限制文件后缀名。
3、QFontDialog 用于设置字体。
4、QInputDialog 用于控件的标准输入,如getInt只能获得整数输入。
5、QColorDialog 用于设置颜色。