当前位置: 首页 > news >正文

河南建设监理协会网站6网站开发和维护费用

河南建设监理协会网站6,网站开发和维护费用,国内免费saas+crm,郑州建设网站哪家好文章目录 Qt QtableWidget表格删除选中行只能选择一行#xff0c;点击按钮后#xff0c;删除一行可以选择中多行#xff0c;点击按钮后#xff0c;删除多行选中某一列中的不同行#xff0c;点击按钮后#xff0c;删除多行 QTableWidgetSelectionRange介绍QTableWidget的选… 文章目录 Qt QtableWidget表格删除选中行只能选择一行点击按钮后删除一行可以选择中多行点击按钮后删除多行选中某一列中的不同行点击按钮后删除多行 QTableWidgetSelectionRange介绍QTableWidget的选择模式 Qt QtableWidget表格删除选中行 只能选择一行点击按钮后删除一行 设置 QTableWidget *tb ui-tableWidget;tb-setSelectionBehavior(QAbstractItemView::SelectRows);tb-setSelectionMode(QAbstractItemView::SingleSelection);操作 QTableWidget *tb ui-tableWidget;int curRowtb-currentRow(); //当前行号tb-removeRow(curRow); //删除当前行及其items可以选择中多行点击按钮后删除多行 设置 QTableWidget *tb ui-tableWidget;tb-setSelectionBehavior(QAbstractItemView::SelectRows);tb-setSelectionMode(QAbstractItemView::ExtendedSelection);操作 QTableWidget *tb ui-tableWidget;QItemSelectionModel *m_selection tb-selectionModel();QModelIndexList indexList m_selection-selectedIndexes();QListint list;int prev -1,curr-1;if(indexList.length()1){//预处理第一行prev indexList.at(0).row();list.append(prev);for(int i1;iindexList.length();i){//qDebug() row: indexList.at(i).row() column: indexList.at(i).column();curr indexList.at(i).row();if(prev curr){continue;}else{prev curr;list.append(prev);}}}else if(indexList.length()1){list.append(indexList.at(0).row());}else{return;}//从大到小排序,必须从最后一行 往前删除 不然会打乱顺序std::sort(list.rbegin(),list.rend());//根据填充到的数据 删除选中列for(int j 0; j list.size(); j){int cc list.at(j);tb-removeRow(cc); //删除当前行及其items}选中某一列中的不同行点击按钮后删除多行 无需设置setSelectionBehavior(QAbstractItemView::SelectRows)但是可以选择的那一列最好设置为不可编辑。按下Ctrl键选择多行。 设置1 tableView-setSelectionMode(QAbstractItemView::ExtendedSelection);//选择模式m_selection new QItemSelectionModel(m_model,this); //创建选择模型tableView-setSelectionModel(m_selection); //设置选择模型设置2 QStandardItem *item1 new QStandardItem(aa1);item1-setEditable(false);QStandardItem *item2 new QStandardItem(aa2);item2-setEditable(false); QListQStandardItem * list {item1,item2};model-appendRow(list); 操作 QModelIndexList indexList m_selection-selectedIndexes();QListint list;int sameColumn-1;for(int i0;iindexList.length();i){if(i0){sameColumnindexList.at(i).column();}//qDebug() row: indexList.at(i).row() column: indexList.at(i).column();if(sameColumn!indexList.at(i).column()){//上面currentColumnChanged信号其实已经让用户只能选择同一列,这里双重保险qDebug()你的选择有不同列请务必选择同一列的不同行来进行多行删除操作;return;}list.append(indexList.at(i).row());}//从大到小排序,必须从最后一行 往前删除 不然会打乱顺序std::sort(list.rbegin(),list.rend());//根据填充到的数据 删除选中列for(int j 0; j list.size(); j){int cc list.at(j);m_model-removeRow(cc);}QTableWidgetSelectionRange介绍 QTableWidgetSelectionRange是Qt框架中用于表示QTableWidget中选定的一块单元格区域的类。以下是如何使用QTableWidgetSelectionRange的一些常见操作 获取当前选定的单元格区域 QListQTableWidgetSelectionRange ranges tableWidget-selectedRanges();获取第一个选定的单元格区域的起始行、起始列、行数和列数 if (!ranges.isEmpty()) {int startRow ranges.first().topRow();int startColumn ranges.first().leftColumn();int rowCount ranges.first().rowCount();int columnCount ranges.first().columnCount(); }遍历所有选定的单元格区域 foreach (const QTableWidgetSelectionRange range, ranges) {int startRow range.topRow();int startColumn range.leftColumn();int rowCount range.rowCount();int columnCount range.columnCount();// 进行处理... }检查特定的单元格区域是否被选定 QTableWidgetSelectionRange range(1, 1, 3, 3); // 定义一个起始行为1起始列为1行数和列数为3的区域 if (tableWidget-selectedRanges().contains(range)) {// 区域被选定 }清除所有选定的单元格区域 tableWidget-clearSelection();QTableWidgetSelectionRange类提供了一种方便的方式来处理QTableWidget中的选择区域。使用它可以获取和操作选定的单元格区域进行相关的处理和操作。 QTableWidget的选择模式 QTableWidget通过setSelectionMode()和SelectionBehavior来设置选择模式 enum QAbstractItemView::SelectionBehavior ConstantValueDescriptionQAbstractItemView::SelectItems0Selecting single items.QAbstractItemView::SelectRows1Selecting only rows.QAbstractItemView::SelectColumns2Selecting only columns. enum QAbstractItemView::SelectionMode 此枚举指示视图如何响应用户选择 ConstantValueDescriptionQAbstractItemView::SingleSelection1When the user selects an item, any already-selected item becomes unselected. It is possible for the user to deselect the selected item by pressing the Ctrl key when clicking the selected item.QAbstractItemView::ContiguousSelection4When the user selects an item in the usual way, the selection is cleared and the new item selected. However, if the user presses the Shift key while clicking on an item, all items between the current item and the clicked item are selected or unselected, depending on the state of the clicked item.QAbstractItemView::ExtendedSelection3When the user selects an item in the usual way, the selection is cleared and the new item selected. However, if the user presses the Ctrl key when clicking on an item, the clicked item gets toggled and all other items are left untouched. If the user presses the Shift key while clicking on an item, all items between the current item and the clicked item are selected or unselected, depending on the state of the clicked item. Multiple items can be selected by dragging the mouse over them.QAbstractItemView::MultiSelection2When the user selects an item in the usual way, the selection status of that item is toggled and the other items are left alone. Multiple items can be toggled by dragging the mouse over them.QAbstractItemView::NoSelection0Items cannot be selected.
http://www.zqtcl.cn/news/903458/

相关文章:

  • 网站功能插件昆明网站建设技术研发中心
  • 网站开发培训中心 市桥移动端ui
  • 高碑店地区网站建设上海排名十大装潢公司
  • 无锡自助建站网站还是新能源专业好
  • pc 手机网站 微站如何建设与维护网站
  • 大学生兼职网站开发毕设论文杭州网络排名优化
  • 做教育机器网站网站建设的步骤图
  • 桔子建站是什么平台郑州公司注册网上核名
  • 网站开发技能有哪些网站建设艾金手指科杰
  • 网站建设挂什么费用网站建设学那些课
  • 网站定位与功能分析在互联网公司做网站
  • 安阳网站建设兼职做网站推广有哪些公司
  • 网站制作的一般过程怎么用手机搭建网站
  • 备案 网站名称 怎么改深圳建网站公司
  • html 企业网站模板网站策划书免费
  • 网站建设销售ppt拖拽建站系统源码
  • 网站托管费用多少网站的开发流程
  • 周到的商城网站建设北京品牌网站
  • 网站开发费用属于什么科目网站建设考试多选题
  • c asp做网站wordpress4.5.2文章采集
  • 百度网站建设电话建立网站站建设可以吗
  • 网站后台代码在哪修改网站如何做下一页
  • 网站开发职业要求百度推广代理商与总公司的区别
  • 西安网站建设中心网页 网 址网站区别
  • 技术支持东莞网站建设机械seo岗位是什么意思
  • 做商城网站需要备案什么域名硬件开发工具有哪些
  • 网络网站制作技巧wordpress全文
  • 韩国原生ip站群服务器左右悬停代码网站
  • 专门做广东11选5的网站网站 备案 营业执照
  • 免费扑克网站wordpress弹出服务协议窗口