一. QFrame类部件
QFrame类族,包括QLabel, QLCDNumber, QSackedWidget, QToolBox, QSplitter, QAbstractScrollArea
1. QLabel
//对齐方式, 属性栏设置 alignment
//实现文本自动换行, 属性栏设置 wordWrap
//设置图片
#include
ui->label->setPixmap(QPixmap("/home/logo.png"));
//设置gif动态图片
#include
QMovie *movie = new QMovie("/home/logo.gif");
ui->label->setMovie(movie);
movie->start();
2. QLCDNumber
//属性 smallDecimalPoint 显示小数点
//属性 digitCount 设置显示的数字个数
//属性 mode 设置显示十进制,八进制,十六进制
//属性 value 设置要显示的数值; ui->lcdNumber->display(number);
3. QSackedWidget
//提供了一个部件,可以有多个界面(页面), 每个界面可以有自己的控件
//关键的函数 setCurrentIndex() 设置
4. QToolBox
//右键"插入页->在当前页之后", 更改其 currentItemText
二. 按键部件
QAbstractButton类是所有按键部件的抽象基类,子类包括复选框QCheckBox, 标准按键QPushButton, 单选框按钮QRadioButton和工具按钮QToolButton.
1. QPushButton//1. 属性checkable, 设置拥有"选中"和"未选中"两种状态
toggled(bool)槽可以判断按钮是否处于被按下状态
//2. 属性flat, 设置可以不显示按钮的边框
//3. 设置 Alt + N 快捷键
ui->pushBtn->setText(tr("&New"));
//4. 添加下拉菜单
QMenu *menu = new QMenu(this);
menu->addAction(QIcon("../image/zoom-in.png"), tr("放大"));
ui->pushBtn->setMenu(menu);
//1. 属性 tristate, 让 CheckBox拥有"不改变状态","选中状态"和"未选中状态"3种.
//2. 操作, 可以关联 stateChanged()信号,也可以用isChecked()函数来查看是否被选中.
三. 行编辑器 QLineEdit
ui->lineEdit->text(); //得到输入的内容
ui->lineEdit->displayText(); //得到显示的内容
3. 输入验证
QValidator *validator = new QIntValidator(100, 999, this);
ui->lineEdit->setValidator(validator);
4. 自动补全
QStringList wordList;
wordList << "Qt" << "Q Creator"<< tr("你好");
QCompleter * completer = new QCompleter(wordList, this); //新建自动完成器
completer->setCaseSensitivity(Qt::CaseInsensitive); //设置大小写不敏感
ui->lineEdit4->setCompleter(completer);
四. 数值设定框
提供了一个可以编辑日期和时间的部件,相关的部件有三个, Time Edit, Data Edit, Data/Time Edit.
timeEdit 的displayFormat属性用来设置小时制
dataEdit 的calendarPopup属性可以使用弹出日历部件
2. QSpinBox 类与 QDoubleSpinBox 类
用来设置整数和浮点数, 在属性suffix, prefix里可以设置后缀和前缀.
五. 滑块部件
QScrollBar, QSlider, QDial.1. Sroll Bar属性: singleStep属性是每步的步长, value是当前的值;tracking是设置是否跟踪,就是拖动滑块时,每移动一个刻度都会发出valueChanged()信号.
2. Slider 属性:tickPosition是否显示刻度, tickInterval设置刻度的间隔.
3. Dial 属性: wrapping用来设置是否首尾相连;notchTarget用来设置刻度之间的间隔;