QTableView添加复选框
原文地址::http://blog.sina.com.cn/s/blog_a6fb6cc90101iang.html
相关文章
1、QtableView中添加复选框----https://www.cnblogs.com/tianxxl/p/11857993.html
2、如何在QTableView中增加QCheckBox----https://blog.csdn.net/lingsnoopy/article/details/88404773
3、在QTableView中使用各种自定义委托 包括ComboBox、DoubleSpinBox、CheckBox以及设置列只读----https://blog.csdn.net/GraceLand525/article/details/80590030
4、(四)Paint函数实现QTableView中增加QCheckBox的方法----https://blog.csdn.net/qimo601/article/details/84222099?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-9.vipsorttest&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-9.vipsorttest
5、在QTableWidget中添加QCheckBox并居中----https://blog.csdn.net/u014378771/article/details/90045880?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.vipsorttest
6、Qt之QTableView添加复选框(QAbstractItemDelegate)----https://blog.csdn.net/weixin_34082177/article/details/90524833?utm_medium=distribute.pc_relevant_download.none-task-blog-2~default~BlogCommendFromBaidu~default-1.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-2~default~BlogCommendFromBaidu~default-1.nonecas
7、Qt-QtableView实现的表格中添加复选框checkBox控件----https://blog.csdn.net/Gerald_Jones/article/details/106594052?utm_medium=distribute.pc_relevant_download.none-task-blog-2~default~BlogCommendFromBaidu~default-2.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-2~default~BlogCommendFromBaidu~default-2.nonecas
8、Qt 之 QTableView 添加复选框(QAbstractTableModel)----https://blog.csdn.net/liang19890820/article/details/50718340?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-2.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-2.nonecase
9、Qt之QHeaderView排序----https://www.cnblogs.com/itrena/p/5938375.html
使用QTableView,经常会有单选、多选、全选的需求,很多软件提供很简单、直观的方式——复选框。Qt中也可以很容易的进行实现。
- 编辑委托 利用委托中重载createEditor(),激活QCheckBox,这个缺点是必须双击/选中,才能显示CheckBox控件。一般不满足实际中的直接显示的需要。
- 设置QAbstractTableModel的flags()函数,通过重写setData()与data()来实现。
- 使用QTableView的setIndexWidget(const QModelIndex &index, QWidget *widget)来实现。 此功能只应该用来显示可视区域内对应一个数据项的静态内容。如果想显示自定义的动态内容或执行自定义编辑器部件,子类化 QItemDelegate代替。也就是说,这只适合做静态数据的显示,不适合做一些插入、更新、删除操作的数据显示。
- 自定义委托,通过paint()方法来实现。这种方式比较复杂,但适合扩展,除了可以嵌入复选框,还可以通过绘制其它控件,按钮、图片等自定义风格。
QMap check_state_map;
bool TableModel::setData( const QModelIndex &index, const QVariant &value, int role )
{ if(!index.isValid()) return false; if (role == Qt::CheckStateRole && index.column() == 0) { check_state_map[index.row()] = (value == Qt::Checked ? Qt::Checked : Qt::Unchecked); }return true;
}
QVariant TableModel::data(const QModelIndex &index, int role) const
{if (!index.isValid())return QVariant();switch(role){//case Qt::TextAlignmentRole:// return Qt::AlignLeft | Qt::AlignVCenter;//case Qt::DisplayRole: // return arr_row_list->at(index.row()).at(index.column());case Qt::CheckStateRole:if(index.column() == 0) { if (check_state_map.contains(index.row())) return check_state_map[index.row()] == Qt::Checked ? Qt::Checked : Qt::Unchecked; return Qt::Unchecked; }default:return QVariant();}return QVariant();
}
Qt::ItemFlags TableModel::flags(const QModelIndex &index) const
{if (!index.isValid()) return 0; if (index.column() == 0) return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable; return Qt::ItemIsEnabled | Qt::ItemIsSelectable;
}
QVariant TableModel::headerData(int section, Qt::Orientation orientation, int role) const
{if (role == Qt::CheckStateRole) { return Qt::Checked;}return QVariant();
}
QTableView添加复选框相关推荐
- html设置复选框图片,css实现图片右上角添加复选框的方法
css实现图片右上角添加复选框的方法 发布时间:2020-06-15 10:59:23 来源:亿速云 阅读:221 作者:Leah 这篇文章给大家分享的是css实现图片右上角添加复选框的方法,相信大部 ...
- C#ListView控件添加复选框并获取选中的数目
1.添加复选框:listView1.CheckBoxes = true; 2.选中listview并获取选中的数目: private void listView1_ItemChecked(object ...
- 中添加复选框_Word/excel中在方框中打钩/叉的符号,简单方便快捷
方法1:插入特殊符号 将光标定位于需要打钩的地方,选择[插入]--[符号]--[其他符号]--更改字体为[Windings2] 方法2:使用快捷键 从上面的截图中可以看到设置快捷键,所以在插入特殊符号 ...
- 组合框里添加复选框的方法
组合框可以看作是列表框和文本框的组合,因其占据的空间少,使用操作方便,常被界面设计人员用于界面开发设计中,在有限个输入的条件下,组合框常用来代替文本框,这样从用户使用角度来看,更趋人性化,所见即所得. ...
- excel添加复选框的两种做法
内容提要:文章介绍excel添加复选框的方法,通过控件命令和VBA实现批量添加复选框.对Excel感兴趣的朋友可加Excel学习交流群:284029260(www.itblw.com) excel添加 ...
- MFC中CListCtrl添加复选框,实现单选
记录MFC项目中CListCtrl添加复选框,实现单选步骤 添加复选框 绑定控件变量 CListCtrl m_ctrList; OnInitDialog函数中添加 m_ctrList.SetExten ...
- 使用JavaScript动态添加复选框Checkbox
首先,使用JS动态产生Checkbox可以采用如下类似的语句: var checkBox=document.createElement("input"); checkBox.set ...
- 给element的select添加复选框
需求:要求给select多选的时候,给下拉框前加上复选框样式 element select原样式 需要更改后的样式 html <el-selectv-model="searchObj. ...
- layui添加复选框_layui复选框使用介绍
layui复选框: 效果图 layui复选框,一个主的复选框控制多个从复选框,主复选框和从复选框的颜色不一样 layui复选框的样式,都是在选然后才会有的,所以直接通过css设置就实现不了了.只可以通 ...
最新文章
- VTK修炼之道52:图形基本操作进阶_多分辨率策略(模型抽取的三种方法)
- Request load debugging - ERP side
- 微信公众号(考试系统)出现额外的弹框,导致页面关闭,且不保存记录
- 美人秀色空绝世,我用PS-GAN试伊妆
- Mr.J--HTTP学习笔记(二)-- URL详解
- 使用Json封装scroll,已处理其兼容性问题
- 关于机器学习 Machine Learning中loss函数参数正则化的一点思考
- Python面向对象中的多态与静态语言(C++,Java)的区别
- 【动画消消乐】HTML+CSS 自定义加载动画 055
- wpa_supplicant详解
- 回顾2017、展望2018
- 编码应该运筹帷幄之中,决胜千里之外
- Android12之OpenSL ES中IObject_Realize和CEngine_Realize区别(十四)
- 【IOS学习之工具学习】sublime text mac(代码编辑器)
- OJ 1308 让人头疼的“双十一”
- 第四十七章 SQL命令 GRANT(一)
- WE LUCKY小幸运咖啡的自我介绍
- 读围城论方鸿渐与孙柔嘉的爱情
- 基于HCE移动支付研究报告
- CATIA转的STP打开什么都没有_当solidworks软件版本低时如何打开高版本文件?
热门文章
- 504 gateway timeout解决方法
- 监督学习(supervised learning)与非监督学习(unsupervised learning)
- VS +QT 手动添加Q_OBJECT 报错问题解决
- 使用Travis-CI自动部署博客
- ncl如何添加线shp文件_NCL画图个例讲解.pdf
- power bi 雷达图_星载雷达与C波段地基雷达数据一致性个例分析 | 新文速递
- 数字图像处理第八章----图像压缩
- web项目修改favicon.ico图标
- stata foreach循环语句的使用
- Transformer拿下CV顶会大奖,微软亚研获ICCV 2021最佳论文