其他窗口部件
文章目录
1、QFrame类族
1.1、带有边框的部件的基类。
-
常用的子类:QLabel、QLCDNumber、QSplitter、QStackedWidget、QTooliBox、QAbstractScrollArea。
QAbstractScrollArea:所有带滚动区域的部件类的抽象基类。 -
Qt中带有Abstract字样的类都是抽象基类
####1.1、QLabel
用来显示文本或图片。 -
wordWrap属性设置自动换行。
-
scaledContents实现自动缩放。
-
配合QFontMetrics类使用。
-
显示图片时要添加头文件< QPixmap >,在构造函数中添加
ui->label->setPixmap(QPixmap("D:/haha.png"));
- 显示GIF动图时需添加< QMovie >,构造函数中需要添加
QMovie *movie = new QMovie("D:/haha.gif");
ui -> lable -> setMovie(movie);
movie -> start();
1.2、QLCDNumber
数码管显示的效果。
- smallDecimalPoint显示小数点。
- digitCount显示的位数。
- mode显示进制。
1.3、QStackedWidget
部件栈。可以有多个界面(页面),每个界面可以拥有自己的部件,只是每次只能显示一个界面。
1.4、QToolBox
层叠窗口部件。(抽屉效果)
2、按钮部件
QAbstractButto类是按钮部件的抽象基类,提供了按钮的功能。
2.1、QPushButton标准按钮
- setIcon()函数可以给按钮添加图标
- 添加< QMenu >头文件,在一个字母前加&可以设置快捷键Alt+字母
2.2、QCheckBox、QRadioButton、QGroupBox
- QCheckBox复选框:可以同时选择多项
- QRadioButton:只能选择一个
- QGroupBox或者QButtonGroup类:管理按钮。
3、QLineEdit
3.1、显示模式
- Normal:正常显示
- NoEcho:不显示
- Password:密码样式
- passwordEchoOnEdit:编辑时显示正常字符,其他情况显示密码样式。
3.2、输入掩码
限制输入的内容
掩码字符有相应的规定。
ui->lineEdit3->setFocus(); // 让lineEdit3获得焦点
qDebug() << ui->lineEdit2->text(); // 输出lineEdit2的内容
qDebug() << ui->lineEdit2->displayText(); // 输出lineEdit2显示的内容
3.3、输入验证
验证器QValidator。
####3.4、自动补全
利用QCompleter类实现。
添加< QCompleter >头文件
参考示例程序Completer
4、QAbstractSpinBox
提供数值设定框和行编辑器来显示设定值。
子类:
- QDateTimeEdit:设定日期时间
- QSpinBox:设定整数
- QDoubleSpinBox:设定浮点数
有Spin Boxes示例程序
4.1、QDateTimeEdit
// 设置时间为现在的系统时间
ui->dateTimeEdit->setDateTime(QDateTime::currentDateTime());
// 设置时间的显示格式
ui->dateTimeEdit->setDisplayFormat(tr("yyyy年MM月dd日ddd HH时mm分ss秒"));
5、QAbstractSlider
QAbstractSlider类用于提供区间的整数值,滑块形式。
子类:
- QScrollBar 滚动条:可用在QScrollArea类中实现滚动区域
- QSlider滑块部件:音量控制或者播放进度条
- QDial刻度表盘部件
有Sliders示例程序。