实现思路:把QCheckBox嵌入式到一个水平布局中


QWidget *widget;  
QHBoxLayout *hLayout;  
QCheckBox *ckb;  
...  
ckb = new QCheckBox();  
hLayout = new QHBoxLayout();  
widget = new QWidget(ui->tableWidget);  
hLayout->addWidget(ckb);  
hLayout->setMargin(0);                          // 必须添加, 否则CheckBox不能正常显示  
hLayout->setAlignment(ckb, Qt::AlignCenter);  
widget->setLayout(hLayout);  
...  
ui->tableWidget->setCellWidget(row, column, widget);  

获取CheckBox的指针的方法


QWidget *widget = (QWidget *)ui->tableWidget->cellWidget(row, column);  
QCheckBox *ckb = (QCheckBox *)widget->children().at(1);  
ckb->setChecked(true);  
...  

备注:     可使用 qDebug() << widget->children(); 输出widget的child列表     从而判断CheckBox的index

转自:http://blog.csdn.net/it_mac/article/details/8953191

-------------------------------------------------------------------------自学笔记-------------------------------------------------------------------------

     //开关按钮
QWidget* widget = new QWidget();
QToolButton* switchBtn = new QToolButton(widget);
switchBtn->setFixedSize(QSize(nWidth, nHeight));
switchBtn->setText("关");
switchBtn->setStyleSheet(offStyle);
QHBoxLayout* hLayout = new QHBoxLayout(widget);
hLayout->setMargin(0);
hLayout->addWidget(switchBtn);
hLayout->setAlignment(switchBtn, Qt::AlignCenter);
devTableWidget->setCellWidget(row, column, widget);
connect(switchBtn, SIGNAL(clicked()), switchMapper, SLOT(slot_switchBtn()));
    //获取按钮指针     QToolButton*toolBtn=(QToolButton*)devTableWidget->cellWidget(row,column)->children().at(0);

在QTableWidget中添加QCheckBox并使其居中显示(转)的更多相关文章

  1. ligerui_实际项目_003:form中添加数据,表格(grid)里面显示,最后将表格(grid)里的数据提交到servlet

    实现效果: "Form"中填写数据,向本页"Grid"中添加数据,转换成Json数据提交,计算总和,Grid文本框可编辑,排序 图片效果: 总结: //disp ...

  2. QTableWidget中添加列表并输出

    注意:这只是一个demo,项目中用到利用QTableWidget创建表,表中包含各种控件,最后保存表中的内容到doc中,此demo完成了QTableWidget中表的创建,以及将表中内容转为字符串格式 ...

  3. QTableWidget中添加按钮

    添加按钮 void QTableWidget::setCellWidget ( int row, int column, QWidget * widget ) widget可以是自己定义的按钮 cla ...

  4. .net应用程序中添加chm帮助文档打开显示此程序无法显示网页问题

    在做.net大作业时添加了chm帮助文档结果在打开时显示“此程序无法显示网页问题”,但是把帮助文档拷到别的路径下却显示正常, 经过从网上查找,终于找到了答案: (1).chm文件的路径中不能含有“#” ...

  5. HTML中使图片居中显示

    注:imageId为图片id<style type="text/css"> #imageId{ display:block; position:relative; ma ...

  6. [Android]Android 布局中如何让图片和文字居中显示?

    图片文字居中显示 **①组件TextView的属性 drawableTop ``` <LinearLayout android:layout_width="match_parent&q ...

  7. 点击得到QTableWidget中任意位置QPushButton的行列信息

    http://www.qtcn.org/bbs/read-htm-tid-51835.html http://www.qtcn.org/bbs/simple/?t43841.html 比如(点击每行最 ...

  8. MFC中添加OpenGL

    WINDOWS下展示OpenGL有多种形式: MFC 或 win32,该如何向MFC中添加OpenGL?下面是介绍最简单OpenGL框架. 1.首先通过VS建立MFC应用程序-MyOpenGL,选择单 ...

  9. [Asp.net MVC]Asp.net MVC5系列——在模型中添加验证规则

    目录 概述 在模型中添加验证规则 自定义验证规则 伙伴类的使用 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5 ...

随机推荐

  1. Kinect for Windows SDK 1.8的改进及新特性

    今年3月, 微软推出了Kinect for Windows SDK 1.7 更新,包括了手势识别 Kinect Interactions 和实时 3D 建模 Kinect Fusion 两项新技术. ...

  2. [蓝牙] 4、Heart Rate Service module

    Detailed Description Heart Rate Service module. This module implements the Heart Rate Service with t ...

  3. 处于同一个域中的两台Sql server 实例无法连接

    处于同一个域中的两台Sql server 实例无法连接,报的错误信息如下: A network-related or instance-specific error occurred while es ...

  4. WPF自定义控件与样式(10)-进度控件ProcessBar自定义样

    一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: Pro ...

  5. python--基础学习(二)判断 、循环、定义函数、继承、调用

    1.判断 if.elif 代码示范 # coding=utf-8 score = 90 if (score>=90): print("完美") print("优秀& ...

  6. 使用Nginx配置NodeJs程序(Windows平台)

    简介 Nginx("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 服务器. Nginx 是由 Igor Sysoev ...

  7. Javascript定时器(一)——单线程

    一.JavaScript 引擎是单线程的 可以从下面的代码中看到,第一个用setTimeout中的代码是死循环,由于是单线程,下面的两个定时器就没机会执行了. <script type=&quo ...

  8. Android基于mAppWidget实现手绘地图(十)–在放大前后执行一些操作

    为了在放大前后执行一些操作,你需要添加MapEventsListener 的实例到MapWidget,使用MapWidget.removeMapEventsListener移除该监听器. mapWid ...

  9. windows环境下跑hadoop自带的wordcount遇到的问题

    hadoop环境自己之前也接触过,搭建的是一个伪分布的环境,主从节点都在我自己的机子上,即127.0.0.1,当初记得步骤很多很麻烦的样子(可能自己用ubuntu还不够熟练),包括myeclipse. ...

  10. Azure ARM (12) ARM模式下,在负载均衡器上设置多个公网IP地址

    <Windows Azure Platform 系列文章目录> 最近在帮助一个客户设置WAF (Web Application Firewall),WAF厂商要求在负载均衡器上,设置多个公 ...