赞
踩
目录
非常常用
1.可以直接拖动创建一个指定布局窗口
2.也可先把控件放在同一个Widget窗口中,再选择布局
可以控制控件的位置
选中弹簧在属性栏中可以控制弹簧大小(Fixed为固定弹簧)
常用的有
Push Botton
点击响应
加载图标
加载图标,在属性栏中icon模块选择资源
在inconSize中修改图标大小
工具按钮,常用于显示图片,可以通过调整按钮的类型来调整文字与图片的关系
ToolButtonIconOnly 只显示图片
ToolButtonTextOnly 只显示文本
ToolButtonTextBesideIcon 文本在图片旁
如图第二个按钮为ToolButtonIconOnly类型
autoRaise控制背景是否透明
单独放是可以选中
放在同一个框框中可以做到只能选一个
初始是都没选中
可通过代码来实现默认选项使用 Radio Button->setChecked(true)
- Widget::Widget(QWidget *parent)
- : QWidget(parent)
- , ui(new Ui::Widget)
- {
- ui->setupUi(this);
-
- //单选按钮 默认选中 男
- ui->rbtn_man->setChecked(true);
- }
运行结果
使用connect来链接点击后的操作
- //点击女单选按钮 打印输出
- connect(ui->rbtn_woman,&QRadioButton::clicked,[=](){
- qDebug()<<"选中“女”";
- });
可以同时多选
Check Box作为信号有专门的发信号函数,stateChanged有参数state
槽函数必须要有int 这个参数
- //复选按钮 点击环境好后 监听
- connect(ui->checkBox,&QCheckBox::stateChanged,[=](int state){
- qDebug()<<state;
- });
2为全选中 0为未选中
可在属性栏中勾选tristate选项可以触发半选 输出1
QListWidget
QTreeWidget
QTableWidget
QListWidget 是qt中的列表框控件,它用于显示多个列表项
列表项对应的类是QListWidgetItem.
使用QListWidgetItem 创建列表项
ui->listWidget->addItem() 将列表项加载到控件中
item->setTexAlignment(Qt:: ) 设置对齐方式
ui->listWidget->addItems(QStringList)可以一次性放入多个列表项,但不能设置对齐方式
- //listWidget
- QListWidgetItem* item = new QListWidgetItem("锄禾日当午");
-
- ui->listWidget->addItem(item);
- //居中
- item->setTextAlignment(Qt::AlignHCenter);
-
- //QStringList QList<QString>
- QStringList list;
- list << "锄禾日当午" <<"汗滴禾下土" << "谁知盘中餐" << "粒粒皆辛苦";
- //addItems参数为QStringList 可以放多行 但不能居中
- ui->listWidget->addItems(list);
运行结果
可以轻松实现各种功能
QTreeWidget 是 Qt 框架提供的一种树形控件,它能以树形结构展示数据(或者文件)之间的包含关系。
头:ui->treeWidget->setHeaderLables (QStringList);
根:ui->treeWidget->addTopLevelItem (QTreeWidgetItem*);
枝:QTreeWidgetItem->addChild (QTreeWidgetItem*);
- //treeWidget树控件使用
- //设置头
- ui->treeWidget->setHeaderLabels(QStringList() << "英雄" << "分路");
-
- QTreeWidgetItem* proItem1 = new QTreeWidgetItem(QStringList() << "中路");
- QTreeWidgetItem* proItem2 = new QTreeWidgetItem(QStringList() << "对抗路");
- QTreeWidgetItem* proItem3 = new QTreeWidgetItem(QStringList() << "发育路");
-
- //将根放到树中
- ui->treeWidget->addTopLevelItem(proItem1);
- ui->treeWidget->addTopLevelItem(proItem2);
- ui->treeWidget->addTopLevelItem(proItem3);
-
- QStringList hero1;
- QStringList hero2;
- QStringList hero3;
- hero1 << "马超" << "以吃中路兵线文明,接管中路并线则征服峡谷";
- hero2 << "马超" << "对抗路一哥,自加强两星期后惨遭大砍";
- hero3 << "元神" << "著名演员桑杰伦说到,除非对抗路削弱,否则元神就是打发育路";
-
- QTreeWidgetItem* l1 = new QTreeWidgetItem(hero1);
- QTreeWidgetItem* l2 = new QTreeWidgetItem(hero2);
- QTreeWidgetItem* l3 = new QTreeWidgetItem(hero3);
- //在根里添加枝杈
- proItem1->addChild(l1);
- proItem2->addChild(l2);
- proItem3->addChild(l3);

Group Box 分组容器
Scroll Area 可以上下滑动的窗口
Tool Box 分组容器
Tab Widget 多个标签的窗口
Stacked Widget 栈容器窗口,可以链接按钮
一个分组容器,可以将一些控件组在一个区域,便于功能分区
对区域内增加一个上下滑动的滑块
分组区域
在对象栏中右键可以添加页
选中ToolBox在属性栏中可以设置各种属性
可以在每个栏下面拖入控件
可以作为浏览标签
选中tabWidget对象,在属性栏中可以设置各种属性
同理,可以在标签页面添加各种控件
右键对象,可以添加标签
栈容器,可以通过按钮来设置第几页的内容
将两个容器分别放入栈的两个位置中,通过右上角进行翻页
放入之后再对象栏中可以看到栈里面有两个对象
设置两个按钮来控制,否则默认为打开第一页,且不会再运行窗口中进行翻页
代码进行链接
- //点击按钮 切换 stacked容器
- connect(ui->bt_scrollArea,&QPushButton::clicked,[=](){
- ui->stackedWidget->setCurrentIndex(0);
- });
- connect(ui->bt_ToolBox,&QPushButton::clicked,[=](){
- ui->stackedWidget->setCurrentIndex(1);
- });
运行结果
同理在对象栏中右键选择添加栈容量
铆接部件(浮动窗口)
- //铆接部件 (浮动窗口)
- QDockWidget* dock = new QDockWidget("aaa",this);
- addDockWidget(Qt::TopDockWidgetArea,dock);
- dock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
运行结果
1.正常添加铆接部件(默认在上方)
2.拖动时可以作为浮动窗口
3.在加入核心部件之后,可以 附着在上下左右边框
Combo Box 下拉框
- //下拉框的实现
- ui->comboBox->addItem("奔驰");
- ui->comboBox->addItem("宝马");
- ui->comboBox->addItem("拖拉机");
-
- //点击按钮 选中拖拉机下拉框内容
- connect(ui->bt_select,&QPushButton::clicked,[=](){
- ui->comboBox->setCurrentText("拖拉机");
- });
运行时点击“拖拉机”按钮“,则下拉框内容切换为”拖拉机“
直接双击添加
字体下拉框
默认有系统自带的多种字体
单行编辑框
在属性框中可以在echo Mode中设置密码模式
核心文本框
可以修改字体格式(运行时不能)
纯文本框,不能调格式
计数器
双精度计数器
时间控件
日期控件
时间日期控件
水平滑块
垂直滑块
水平滚动条
垂直滚动条
设置快捷键
标签页面,可以添加文字,也可以添加图片或动图
7.1.1 添加图片
添加图片:在属性栏中找到pixmap,在资源文件中添加图片
可以选中scaledContents,使图片填充标签框
添加动图需要通过代码实现
- //利用QLabel 显示动态图片 格式要求 gif
- QMovie* movie = new QMovie(":/images/bandicam 2024-04-29 18-27-59-055 00_00_00-00_00_30.gif");
- ui->label->setMovie(movie);
- movie->start();
7.1.3 添加Label的边框
在属性栏中QFrame的frameShape选择合适的边框
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。