控件是用户可以用来输入或操作数据的对象,也就相当于汽车中的方向盘、油门、刹车、离合器等,它们都是对汽车进行操作的控件。在PyQt5中,控件的基类是QFrame类,而QFrame类继承自QWidget类,QWidget类是所有用户界面对象的基类。
1 认识控件
Qt Designer设计器中默认对控件进行了分组,表中列出了控件的默认分组及其包含的控件。
| Layouts布局管理控件 |
说 明 |
| VerticalLayout |
垂直布局 |
| GridLayout |
网格布局 |
| HorizontalLayout |
水平布局 |
| FormLayout |
表单布局 |
| Spacers弹簧控件 |
说明 |
| HorizontalSpacer |
水平弹簧 |
| VerticalSpacer |
垂直弹簧 |
| Buttons按钮类控件 |
说明 |
| PushButton |
按钮 |
| ToolButton |
工具按钮 |
| RadioButton |
单选按钮 |
| CheckBox |
复选框 |
| CommandLinkButton |
命令链接按钮 |
| DialogButtonBox |
对话框按钮盒 |
| Item Views(Model-Based)项目视图控件 |
说明 |
| ListView |
列表视图 |
| TreeView |
树视图 |
| TableView |
表格视图 |
| ColumnView |
列视图 |
| UndoView |
撤销命令显示视图 |
| Item Widgets(Item-Based)项目控件 |
说明 |
| ListWidget |
列表控件 |
| TreeWidget |
树控件 |
| TableWidget |
表格控件 |
| Containers容器控件 |
说明 |
| GroupBox |
分组框 |
| ScrollArea |
滚动区域 |
| ToolBox |
工具箱 |
| TabWidget |
选项卡 |
| StackedWidget |
堆栈窗口 |
| Frame |
帧 |
| Widget |
小部件 |
| MDIArea |
MDI区域 |
| DockWidget |
停靠窗口 |
| Input Widgets 输入控件 |
说明 |
| ComboBox |
下拉组合框 |
| LineEdit |
单行文本框 |
| PlainTextEdit |
纯文本编辑框 |
| DoubleSpinBox |
小数选择控件 |
| DateEdit |
日期编辑框 |
| Dial |
旋钮 |
| VerticalScrollBar |
垂直滚动条 |
| VerticalSlider |
垂直滑块 |
| FontComboBox |
字体组合框 |
| TextEdit |
多行文本框 |
| SpinBox |
数字选择控件 |
| TimeEdit |
时间编辑框 |
| DateTimeEdit |
日期时间编辑框 |
| HorizontalScrollBar |
水平滚动条 |
| HorizontalSlider |
水平滑块 |
| KeySequenceEdit |
按键编辑框 |
| Display Widgets 显示控件 |
说明 |
| Label |
标签控件 |
| GraphicsView |
图形视图 |
| LCDNumber |
液晶数字显示 |
| HorizontalLine |
水平线 |
| OpenGLWidget |
开放式图形库工具 |
| TextBrowser |
文本浏览器 |
| CalendarWidget |
日期控件 |
| ProgressBar |
进度条 |
| VerticalLine |
垂直线 |
2 控件的命名规范
在使用控件的过程中,可以通过控件默认的名称调用。如果自定义控件名称,建议按照表中的命名规范对控件进行命名。
| 控 件 名 称 |
命 名 |
控 件 名 称 |
命 名 |
| Label |
lab |
ListWidget |
lw |
| LineEdit |
ledit |
TreeView |
tv |
| TextEdit |
tedit |
TreeWidget |
tw |
| PlainTextEdit |
pedit |
TableView |
tbv |
| TextBrowser |
txt |
TableWidget |
tbw |
| PushButton |
pbtn |
GroupBox |
gbox |
| ToolButton |
tbtn |
SpinBox |
sbox |
| CommandLinkButton |
linbtn |
TabWidget |
tab |
| RadioButton |
rbtn |
TimeEdit |
time |
| CheckBox |
ckbox |
DateEdit |
date |
| ComboBox |
cbox |
ListView |
lv |
Info: 说明
控件的命名并不是绝对的,可以根据个人的喜好习惯或者企业要求进行灵活使用。