网站首页 > 技术文章 正文
介绍
QTabWidget 是qt中 常用的一个表格组件,在展示列表以及部分详细信息的时候可以用它,他的样式及用途都比较广泛,它独特之处在他内部已经将表头和表格内容分开,我们在使用的过程中也可以直接是用默认的表头(当然表头也是可以隐藏的,可以根据我们自己的需求来设计它)。他的表头包括行标头和列表头。
// 设置表头
QTableWidgetItem *headerItem;
QStringList headerText;
headerText<<"名称1"<<"名称2"<<"分类"<<"作者";
ui->tableWidget->setColumnCount(headerText.count());//都会认知表头数量
// ui->tableWidget->horizontalHeader()->setSortIndicator(0, Qt::AscendingOrder); 用于设置水平表头 verticalHeader 列表头
ui->tableWidget->horizontalHeader()->setSortIndicatorShown( true );//打开表头排序
ui->tableWidget->horizontalHeader()->setClickable( true ); //表头可以通过点击进行排序
connect(headerGoods, SIGNAL(sectionClicked( int )), _nodeTableWidget, SLOT (sortByColumn( int )));
在表头添加文字 以及做一些美化
QT开发学习文章推荐:Qt开发进阶技术栈学习路线和资料
for (int i =0;i<ui->tableWidget->columnCount();i++) { //每一行的文字
headerItem = new QTableWidgetItem(headerText.at(i));
QFont font = headerItem->font();
font.setBold(true);
font.setPointSize(14);
headerItem->setTextColor(Qt::white);
headerItem->setFont(font);
ui->tableWidget->setHorizontalHeaderItem(i,headerItem); //水平表头
}
ui->tableWidget->horizontalHeader()->setMinimumHeight(44);
ui->tableWidget->verticalHeader()->*setVisible*(false);//
表头美化:
"QHeaderView::down-arrow {subcontrol-position: center right;//设置内容的位置
image: url(://tu.png);//在表头添加图片内容
padding-right: 8px;//设置边距}"
表格内部美化:
ui->tableWidget->setAlternatingRowColors(true); // 隔行变色
ui->tableWidget->setPalette(QPalette(QColor(245,249,249))); // 设置隔行变色的颜色
这里的颜色是设置的是隔行变色的第二个颜色,默认为白色
ui->tableWidget->setEditTriggers(QTableWidget::NoEditTriggers);//禁止编辑
在表格禁止修改时使用
ui->tableWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
this->setFocusPolicy(Qt::NoFocus); //选中单元格时,不出现虚框
这句话在使用tableWidget 时一定要加,否则他的默认会在选中的每一个单元上有虚线出现,奇丑无比,可以通过这句阻止他的出现。
ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);//点击选择行
ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection); //设置只能选择一行
ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers); //设置内容不可更改
在单元格中设置按钮
在QTableWidget中添加控件
**tableWidget->setCellWidget(0,0,pBtn); **
第一个参数是指按钮所在的行
第二个参数是按钮所在的列
第三个参数是按钮的名称
当然 这个按钮可以换成任何一个控件,包括把它换成一个界面
猜你喜欢
- 2024-10-20 Qt 开发经验总结 qt软件开发
- 2024-10-20 Qt QTableWidget用法总结 qtablewidget qtableview
- 2024-10-20 实战PyQt5: 068-MV框架中的项视图部件
- 2024-10-20 Qt开发经验小技巧231-235 qt开发入门简介
- 2024-10-20 Python+PyQt5进阶(5) pyqt5 django
- 2024-10-20 Qt项目升级到Qt6经验总结 qt更新界面
- 2024-10-20 QTableWidget表格中增删数据 qtablewidget清空表格
- 2024-10-20 C/C++ Qt StatusBar 底部状态栏应用
- 2024-10-20 Qt的常用控件 qt控件详解
- 2024-10-20 Python PyQt5通过QTableWidget表格控件操作SQLite数据库
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)