Qt6学习笔记七(ToolButton、RadioButton、GroupBox、CheckBox、ListWidget、TreeWidget、TableWidget)

简介: Qt6学习笔记七(ToolButton、RadioButton、GroupBox、CheckBox、ListWidget、TreeWidget、TableWidget)

按钮组

一、工具按钮ToolButton

toolbutton:多用于工具栏,提供命令或选项,一般不会带文字在按钮上,用来显示图标

类似word种的这样的工具栏

pushbutton:是普通按钮,可以提供文字,图标都在按钮上。可以设置一定的界面风格等

toolButton的功能比pushbutton更多一些。

二、单选按钮Radio Button和分组框GroupBox

拖4个单选框,如下图

但是点击四个中任意一个,其他就会消失,应该要将男女为一组,已婚未婚为一组

使用GroupBox对它们进行两两分组,只需要把同一组的放入同一个GroupBox里面就行了

如果要设置默认值(通过程序实现,一般ui只进行布局)

先将 单选按钮“男” , 对象改名为rBtnMan

将 单选按钮“女”,对象改名为rBtnWoman

//设置单选按钮  “男”默认选中
ui->rBtnMan->setChecked(true);
//选中单选按钮“女”  打印信息
connect(ui->rBtnWoman,&QRadioButton::clicked,[=](){
   qDebug()<<"select woman!";
});

三、多选框CheckBox

用groupBox将几个CheckBox放在一起

设置其中一个多选框的对象名为cBox

//多选按钮  2是选中, 0是未选中
connect(ui->cBox,&QCheckBox::stateChanged,[=](int state){
   qDebug()<<state;
});

如果设置tristate,那么就是有3种状态

0:未选 1:半选 2:选中

总结

Item Widget

四 、List Widget 列表容器

//利用listWidget写诗
QListWidgetItem *item = new QListWidgetItem("锄禾日当午");
//将一行的诗放入listWidget控件中
ui->listWidget->addItem(item);
//设置listWidgetitem的对齐格式
item->setTextAlignment(Qt::AlignHCenter);//(查阅文档)
//在listWidget中利用addItems一次性加入多行。
QStringList list;
list<<"锄禾日当午"<<"汗滴禾下土"<<"谁知盘中餐"<<"粒粒皆辛苦";//QStringList重载了<<运算符,每次都会自动换行
ui->listWidget->addItems(list);

五、Tree Widget 树控件

要实现这种效果

//treeWidget树控件使用
//设置水平头
ui->treeWidget->setHeaderLabels(QStringList()<<"英雄"<<"英雄介绍");//QStringList()是匿名对象
//加载顶层节点(根节点)
QTreeWidgetItem *liItem = new QTreeWidgetItem(QStringList()<<"力量");
QTreeWidgetItem *minItem = new QTreeWidgetItem(QStringList()<<"敏捷");
QTreeWidgetItem *zhiItem = new QTreeWidgetItem(QStringList()<<"智力");
ui->treeWidget->addTopLevelItem(liItem);
ui->treeWidget->addTopLevelItem(minItem);
ui->treeWidget->addTopLevelItem(zhiItem);
//追加子节点
QTreeWidgetItem *l1 = new QTreeWidgetItem(QStringList()<<"刚被猪"<<"前排坦克,能在吸收伤害的同时造成可观的范围输出");
liItem->addChild(l1);

六、Table Widget 表格控件

要实现这样的效果

//TableWidget控件
//设置列数
ui->tableWidget->setColumnCount(3);
//设置水平表头
ui->tableWidget->setHorizontalHeaderLabels(QStringList()<<"姓名"<<"性别"<<"年龄");
//设置行数
ui->tableWidget->setRowCount(5);
//设置正文
QStringList nameList;
nameList<<"亚瑟"<<"赵云"<<"张飞"<<"关羽"<<"花木兰";
QList<QString> sexList;//和上面QStringList是一样的
sexList<<"男"<<"男"<<"男"<<"男"<<"女";
for(int i=0;i<5;i++){
    int col=0;
    ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));
    ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList[i]));
    ui->tableWidget->setItem(i,col++,new QTableWidgetItem(QString::number(18)));
}


相关文章
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
809 4
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
|
4月前
|
开发者
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
239 4
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
900 4
|
4月前
|
数据安全/隐私保护
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
450 4
|
4月前
|
搜索推荐 C++
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
168 4
|
4月前
|
API UED
【Qt 学习笔记】Qt窗口 | 状态栏 | QStatusBar的使用及说明
【Qt 学习笔记】Qt窗口 | 状态栏 | QStatusBar的使用及说明
553 4
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
334 3
|
4月前
|
数据可视化
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
109 3
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
688 3
|
4月前
【Qt 学习笔记】Qt窗口 | 对话框 | Qt对话框的分类及介绍
【Qt 学习笔记】Qt窗口 | 对话框 | Qt对话框的分类及介绍
164 3