QTableWidget通常用于数据的展示,通过其表格布局可以让用户更清晰的查看数据,同时也让数据的筛选变得更加直观。

不过,初学者们和粗心大意的人总是会发现明明自己数据已经正常添加,可是程序运行之后却看不到QTableWidget上有任何一点数据,一片空白。

这是怎么回事呢?我们先看一个可以复现这个问题的代码:

 func main() {
widgets.NewQApplication(len(os.Args), os.Args) table := widgets.NewQTableWidget(nil)
table.SetColumnCount()
table.SetHorizontalHeaderLabels([]string{"编号", "姓名", "年龄"})
// 去除边框
table.SetShowGrid(false) // 设置数据
num1 := widgets.NewQTableWidgetItem2("", )
name1 := widgets.NewQTableWidgetItem2("anmi", )
age1 := widgets.NewQTableWidgetItem2("", )
table.SetItem(, , num1)
table.SetItem(, , name1)
table.SetItem(, , age1) num2 := widgets.NewQTableWidgetItem2("", )
name2 := widgets.NewQTableWidgetItem2("terra", )
age2 := widgets.NewQTableWidgetItem2("", )
table.SetItem(, , num2)
table.SetItem(, , name2)
table.SetItem(, , age2) table.SetWindowTitle("QTableWidget")
table.Show() widgets.QApplication_Exec()
}

导致数据无法显示的代码

这是它的效果:

没错,表头正常显示了,然而数据却不见了!

我们再来看一下修复后的代码:

 func main() {
widgets.NewQApplication(len(os.Args), os.Args) table := widgets.NewQTableWidget(nil)
table.SetColumnCount()
table.SetRowCount()
table.SetHorizontalHeaderLabels([]string{"编号", "姓名", "年龄"})
// 去除边框
table.SetShowGrid(false) // 设置数据
num1 := widgets.NewQTableWidgetItem2("", )
name1 := widgets.NewQTableWidgetItem2("anmi", )
age1 := widgets.NewQTableWidgetItem2("", )
table.SetItem(, , num1)
table.SetItem(, , name1)
table.SetItem(, , age1) num2 := widgets.NewQTableWidgetItem2("", )
name2 := widgets.NewQTableWidgetItem2("terra", )
age2 := widgets.NewQTableWidgetItem2("", )
table.SetItem(, , num2)
table.SetItem(, , name2)
table.SetItem(, , age2) table.SetWindowTitle("QTableWidget")
table.Show() widgets.QApplication_Exec()
}

正确的代码

显示效果:

其实问题很简单,看代码的第六行,我们设置了行数。

QTableWidget需要先设置一共有多少行数据才能正常显示,如果不设置那么默认是0行数据,也就是什么也不显示。

所以需要QTableWidget的人一定不要忘了使用SetRowCount告诉widget有多少数据需要绘制出来。

解决QTableWidget不显示数据的问题的更多相关文章

  1. C# 解决ListView控件显示数据出现闪屏的问题

    一.发现问题 如果发送数据过快的情况下,ListVies滚屏显示数据时会显示闪屏,如下所示现象: 二.解决问题 根据出现闪屏的情况,在网上查了资料要使用双缓存的办法来处理.其原理是数据在缓存区中进行处 ...

  2. EL表达式显示数据取整问题

    第一 插入fmt标签库 <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%&g ...

  3. Flexigrid在IE下不显示数据的处理

    文章总结自我的论坛提问: http://bbs.csdn.net/topics/390498434?page=1#post-394918028 解决方法: 网上的答案经我验证都是不靠谱的,以后大家就知 ...

  4. aspnet中通过多条件筛选来显示数据的实现

    UI图: 功能实现: 1.勾选住哪个选项之后,就加入了筛选.支持姓名的模糊查询. 2.对筛选出来的数据可以直接修改,并更新回数据库. 说明:显示的数据来自T_User表.数据显示控件使用的是 List ...

  5. datagrid数据表格当数据为0的时候页面不显示数据

    如下图: datagrid数据表格当数据为0的时候页面不显示数据,为空的表格数据全是0,但是页面无法显示 传递的json数据也是没问题的: 所以实在想不通,为什么easyUI datagrid 不显示 ...

  6. LigerUI之Grid使用详解(一)——显示数据

    目录: 一.概述 二.Grid使用步骤 三.使用Grid展示数据 四.源码下载 一.概述 在开发web信息管理系统时,使用Web前端框架可以帮助我们快速搭建一组风格统一的界面效果,而且能够解决大多数浏 ...

  7. qt QTableWidget&&QTableView 导出数据到excel

    通常情况下,我们在开发过程中比较常用的方法是将表格的数据到处到excel文件.我也在这个点上头疼了很长时间,不过功夫不负苦心人,最终还是勉强达到效果,为了后面再次用到时不手忙脚乱现在将方法寄存在此,如 ...

  8. Struts1.x 中处理乱码及通过标签显示数据

    1.通过filter解决乱码问题 网页的请求到达之前,先要经过filter的处理: 提取数据出现乱码:request.setCharacterEncoding("UTF-8"); ...

  9. [转]qt QTableWidget&&QTableView 导出数据到excel

    转自http://blog.csdn.net/fairystepwgl/article/details/54576372 注意:由于在qt导出的过程中分为QTableWidget导出文件到excel和 ...

随机推荐

  1. getElementById和$()获取值一点注意事项

    <script type="text/javascript"> window.onload = function () { var obj = document.get ...

  2. android-effect

    1. 基本框架 2.初探

  3. one-to-one 一对一映射关系(转 wq群)

    2.配置对应的xml配置文件 person的配置文件 idCard的配置文件 idCard的配置文件  3.测试 运行测试程序后,控制台输出两条语句

  4. Breathe me

    Help, I have done it again 帮帮我,我又做错了. I have been here many times before 哪怕这已经不是一两次了. Hurt myself ag ...

  5. Pi的计算

    百度百科           圆周率用希腊字母 π(读作pài)表示,是一个常数(约等于3.141592654),是代表圆周长和直径的比值.它是一个无理数,即无限不循环小数.在日常生活中,通常都用3. ...

  6. apache与tomcat负载集群集成方法配置

    apache与tomcat负载集群集成方法有3种jk.jk_proxy.http_proxy apache:httpd-2.2.17-win32-x86-no_ssl.msi tomcat:apach ...

  7. go语言面向对象编程之类型系统

    go语言类型系统 类型系统,顾名思义是指一个语言的类型体系结构,一个典型的类型系统通常包含如下基本内容 基础类型:如byte,int,bool,float等 复合类型:如数组,指针,结构体 可以指向任 ...

  8. Python学习笔记【第四篇】:基本数据类型

    变量:处理数据的状态 变量名 = 状态值 类型 python中有以下基本数据类型: 1:整形 2:字符串类型 3:Bool类型 4:列表 5:元祖(不可变) 6:字典(无序) 7:集合 (无序.不重复 ...

  9. C#中四步轻松使用log4net记录本地日志(WPF有点小区别)

    在这里,记录我在项目中使用log4net记录本地日志的步骤.在不会之前感觉很难,很神秘,一旦会了之后其实没那么难.其实所有的事情都是一样的,下面我就分享一下我使用log4Net的经验. 第一步:首先从 ...

  10. itext实现pdf自动定位合同签订

    需求 需要实现如下效果(最终效果) 思考 需求方的要求就是实现签订合同,实现方法不限,但过程中又提出需要在签章的过程中把签订日期的文字也打上去,这就有点坑了~ 一开始的想法是想办法定位需要签名的位置, ...