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

宇宙企画网站福建百度推广

宇宙企画网站,福建百度推广,福州企业网站建设,衢州做网站的公司今天晚上花点时间研究一下表格列的显隐问题(类似与excel的隐藏列功能),在网络上搜罗了一通资料,没现成的例子作为借鉴,只能自己研究编写了。现在将过程记录下来,以便日后翻阅。 首先声明:因为时…

今天晚上花点时间研究一下表格列的显隐问题(类似与excel的隐藏列功能),在网络上搜罗了一通资料,没现成的例子作为借鉴,只能自己研究编写了。现在将过程记录下来,以便日后翻阅。
首先声明:因为时间仓促,以下例子写的不是很规范,只是为了实现特定功能,如果哪位仁兄想要借鉴,只能自己完善优化以下了。示例运行后的如下图所示:
在这里插入图片描述
在这里插入图片描述

1.创建项目工程

1.创建TableLearn工程,只包括以下文件。
在这里插入图片描述
2.资源mainwindow.ui中拉入一个QTableWidget,瞎输入几行几列。其中类目1、类目2、类目3左右显隐节点,分别显隐对应的子集。
在这里插入图片描述

2.显隐按钮添加

1.在类目1、类目2、类目3位置创建3个按钮,分别用于显隐触发各自的子项。按钮存放到QButtonGroup中用于统一建议按钮的信号槽映射关系。

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <QButtonGroup>namespace Ui {
class MainWindow;
}class MainWindow : public QMainWindow
{Q_OBJECTpublic:explicit MainWindow(QWidget *parent = nullptr);~MainWindow();void UpdateButtonPos(int buttonId);
private slots:void on_buttonClicked(int id);
private:Ui::MainWindow *ui;QButtonGroup *m_buttonGroup;
};
#endif // MAINWINDOW_H

2.按钮位置设置与信号槽绑定过程

MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);m_buttonGroup = new QButtonGroup();QPushButton *button1 = new QPushButton("-",this);QTableWidgetItem *item = ui->tableWidget->item(0,0);//获取单元格坐标位置QRect rect = ui->tableWidget->visualItemRect(item);button1->setGeometry(rect.x() + rect.width(),rect.y(),36,36);m_buttonGroup->addButton(button1,0);QPushButton *button3 = new QPushButton("-",this);item = ui->tableWidget->item(0,3);//获取单元格坐标位置rect = ui->tableWidget->visualItemRect(item);button3->setGeometry(rect.x() + rect.width(),rect.y(),36,36);m_buttonGroup->addButton(button3,3);QPushButton *button6 = new QPushButton("-",this);item = ui->tableWidget->item(0,6);//获取单元格坐标位置rect = ui->tableWidget->visualItemRect(item);button6->setGeometry(rect.x() + rect.width(),rect.y(),36,36);m_buttonGroup->addButton(button6,6);connect(m_buttonGroup,SIGNAL(buttonClicked(int)),this,SLOT(on_buttonClicked(int)));}

3. 按钮点击处理

void MainWindow::on_buttonClicked(int id)
{if(id == 0){if(m_buttonGroup->button(id)->text() == "□"){ui->tableWidget->setColumnHidden(1,false);ui->tableWidget->setColumnHidden(2,false);m_buttonGroup->button(id)->setText("-");}else{ui->tableWidget->setColumnHidden(1,true);ui->tableWidget->setColumnHidden(2,true);m_buttonGroup->button(id)->setText("□");}}else if(id == 3){if(m_buttonGroup->button(id)->text() == "□"){ui->tableWidget->setColumnHidden(4,false);ui->tableWidget->setColumnHidden(5,false);m_buttonGroup->button(id)->setText("-");}else{ui->tableWidget->setColumnHidden(4,true);ui->tableWidget->setColumnHidden(5,true);m_buttonGroup->button(id)->setText("□");}}else if(id == 6){if(m_buttonGroup->button(id)->text() == "□"){ui->tableWidget->setColumnHidden(7,false);m_buttonGroup->button(id)->setText("-");}else{ui->tableWidget->setColumnHidden(7,true);m_buttonGroup->button(id)->setText("□");}}UpdateButtonPos(0);UpdateButtonPos(3);UpdateButtonPos(6);
}

4.按钮位置更新

void MainWindow::UpdateButtonPos(int buttonId)
{//移动按钮QRect rect = ui->tableWidget->visualItemRect(ui->tableWidget->item(0,buttonId));m_buttonGroup->button(buttonId)->move(rect.x()+rect.width(),rect.y());
}
http://www.hrbkazy.com/news/38215.html

相关文章:

  • 怎么用服务器做网站百度提交网站入口网址
  • 免费网站管理软件济南seo网站排名关键词优化
  • 北镇做网站活动推广文案
  • 国外网站怎么做引流我要发布信息
  • 1688网站一起做网店知道百度
  • 中山做外贸网站建设竞价推广账户竞价托管费用
  • 用自己的身份做网站备案搜索引擎网站优化推广
  • 搜索网站存在的关键字天津百度
  • 求做政府采购网站seo网站建设是什么意思
  • 杂志网站建设营销推广手段有什么
  • 宁波建网站哪家值得信赖seo搜索引擎优化期末及答案
  • 医院做网站开发什么是网络营销推广
  • 做律师网站公司百度收录网址
  • 做移动网站优seo简单优化操作步骤
  • 网站标题用什么符号苏州seo网络推广
  • 免得做网站优秀网页设计赏析
  • 网站建设公司市场博客网
  • 佛山个人建站模板宁波百度关键词推广
  • 网站推广费用大概需要多少钱2020年关键词排名
  • 福田做棋牌网站建设哪家好网络广告营销对应案例
  • 小程序游戏源码长沙关键词优化首选
  • 北京网站设计公司兴田德润放心网络推广是什么工作
  • html网站搭建别人恶意点击我们竞价网站
  • 雅安网站建设网上国网app推广方案
  • 马鞍山住房和城乡建设委员会网站优化防控措施
  • 怎么在百度做网站广州线下培训机构停课
  • 北京网站建设的价格2345网址导航浏览器
  • 网站建设都 包括哪些山东seo多少钱
  • 电视剧在线观看完整版免费网站有效果的网站排名
  • 手机网站开发调用照片网站推广的四个阶段