QTableWidget使用简单,因为不再存在父节点的关系
虽然使用比较简单,但亲自过一遍还是有必要的,权当一个学习笔记吧,记录在此。
#include "tablewidgetxxx.h"
#include <QtGui/QApplication>
#include <QtGui/QTableWidget> typedef struct {
char * country;
double GDP, population;
}GDP_FACTS; GDP_FACTS GDP_facts[] = {
{"United States", 14.6, 2.7 },
{"PRC China", 6.1, 13.0 },
{"Japan", 5.4, 1.3 },
{"Germany", 3.3, 0.8 },
{"United Kingdom", 2.3, 0.6 }
}; int main(int argc, char *argv[])
{
QApplication app(argc, argv); const int rows=, columns=;
// 实例化Table,并指定行列数
QTableWidget widget(rows, columns);
// 设置表头
QStringList list;
list << "Country" << "Grand GDP" << "Population" << "GDP per person";
widget.setHorizontalHeaderLabels(list); for (int row=; row<rows; row++) {
// 每一个items[j]代表一个Cell,整体组成一行
QTableWidgetItem * items[columns];
// 设置每一行的Cell风格
for (int j=; j<columns; j++ ) {
items[j] = new QTableWidgetItem(); // 创建一个QTableWidgetItem对象表示表格中的一个Cell数据项
items[j]->setTextAlignment( Qt::AlignHCenter);
QFont font; font.setPointSize();
items[j]->setFont( font );
}
// 设置每一行的Cell内容
GDP_FACTS * p = & GDP_facts[row]; // 结构体指针赋值,使之指向提前定义的固定内容
items[]->setData(Qt::DisplayRole, p->country ); // 构造的QVariant对象存放一个QString值
items[]->setData(Qt::DisplayRole, p->GDP ); // 构造的QVariant对象存放double类型的值
items[]->setData(Qt::DisplayRole, p->population );
items[]->setData(Qt::DisplayRole, p->GDP / p->population );
// Table的Cell要一个一个设置
for (int j=; j<columns; j++ )
widget.setItem(row, j, items[j] ); // 调用setItem()将它们添加到QTableWidget的内部模型中。
}
// 设置表头排序
widget.setSortingEnabled(true ); widget.resize(, );
widget.show();
return app.exec();
}
参考:
http://book.51cto.com/art/201207/347904.htm
超详细说明:TableWidget使用说明和增删改操作的实现
http://www.cnblogs.com/li-peng/p/3654634.html
QTableWidget使用简单,因为不再存在父节点的关系的更多相关文章
- 红黑树之 原理和算法详细介绍(阿里面试-treemap使用了红黑树) 红黑树的时间复杂度是O(lgn) 高度<=2log(n+1)1、X节点左旋-将X右边的子节点变成 父节点 2、X节点右旋-将X左边的子节点变成父节点
红黑树插入删除 具体参考:红黑树原理以及插入.删除算法 附图例说明 (阿里的高德一直追着问) 或者插入的情况参考:红黑树原理以及插入.删除算法 附图例说明 红黑树与AVL树 红黑树 的时间复杂度 ...
- treeview插件使用:根据子节点选中父节点
鄙人公司没有专门的前端,所以项目开发中都是前后端一起抡.最近用bootstrap用的比较频繁,发现bootstrap除了框架本身的样式组件外,还提供了多种插件供开发者选择.本篇博文讲的就是bootst ...
- 使用jquery获取父元素或父节点
使用jquery获取父元素或父节点,比较简单,jquery提供了丰富的方法来让我们使用jquery获取父元素或父节点 jquery获取父元素方法比较多,比如parent(),parents(),c ...
- cocos子节点转父节点坐标 原理浅析(局部坐标转世界坐标同理)
在CCNode的类中,有一个得到 一个节点坐标系转换父亲坐标系的一个矩阵,节点内坐标乘以这个矩阵,就可以转换为在节点父节点中的坐标,方法名为: Mat4& Node::getNodeToPar ...
- 总结获取原生JS(javascript)的父节点、子节点、兄弟节点
关于原生JS获取节点,一直是个头疼的问题,而且调用方法的名字又贼长了,所以我选择用JQ,好像跑题了-- 话不多说看代码 获取父节点 及 父节点下所有子节点(兄弟节点) <ul> <l ...
- 再谈树---无根树转有根树( dfs搜索转化+fa数组记录父节点) *【模板】
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <vector> ...
- Z-tree 统计每一父节点的叶子节点数(看这一篇就够了)
最近刚走出校园的我找到了第一份工作,在入职考核中就遇见了一道Z-tree的试题 这道题目本身是不难的,但是我第一次接触这个插件而且还把解决问题的方向搞错了,弄的我好几天都很难受. 弄得我都开始怀疑人生 ...
- [LeetCode] 1123. Lowest Common Ancestor of Deepest Leaves 最深叶结点的最小公共父节点
Given a rooted binary tree, return the lowest common ancestor of its deepest leaves. Recall that: Th ...
- 找到树中指定id的所有父节点
const data = [{ id: 1, children: [{ id: 2, children: [{ id: 3, }, { id: 4, }], }], }, { id: 5, child ...
随机推荐
- iTween基础之iTweenPath(自定义路径移动)
在游戏开发中经常会用到让一个游戏对象按照指定的路线移动,iTweenPath就提供了可视化的编辑路径功能. iTweenPath 下载地址: http://download.csdn.net/deta ...
- Android -- Webview自适应屏幕
第一种 WebSett ...
- 事后分析报告(M1阶段)
我们的项目是自选项目,一款名为备忘录锁屏MemoryDebris的软件. 因为我们组成员在此之前都没有接触过安卓开发,于是在第一阶段花了很大的时间和精力学习安卓.又花费了较长一段时间设计软件与研究安卓 ...
- HDU 3555 Bomb 数位dp
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3555 Bomb Time Limit: 2000/1000 MS (Java/Others) Mem ...
- 【转】EXT VTYPE自定义举例
原文地址:http://www.blogjava.net/xiaohuzi2008/archive/2012/12/08/392676.html 近日来对Ext特别感兴趣,也许是它那种OO的设计思想吸 ...
- C++ Template之技巧性基础知识
1.对于T是自定义类型的,如果存在子类型则需要在模版内部加上typename 示例代码: template<typename T> class Myclass { typename T:: ...
- [bzoj 2097]奶牛健美操
题目描述 对于一棵n个点的树,删除k条边,使得所有联通块直径最大值最小 题解 首先二分联通块直径最大值的最小值. 那么这个能否达成的判定变成了一个类似树形dp的东西 对于一个子树,删除一条边可以删除整 ...
- Leetcode#145 Binary Tree Postorder Traversal
原题地址 递归写法谁都会,看看非递归写法. 对于二叉树的前序和中序遍历的非递归写法都很简单,只需要一个最普通的栈即可实现,唯独后续遍历有点麻烦,如果不借助额外变量没法记住究竟遍历了几个儿子.所以,最直 ...
- 客户端发包 GS端接收
客户端发包,GS接收 bool GameServer::ProcessLoop(packet& rPkt)//GS线程做的 { if(false == m_spDataLayer->Re ...
- openSSL漏洞原理及安全加固
2014年4月8日晚,互联网爆出了又一重量级安全漏洞,即CVE-2014-0160,通俗来讲就是OpenSSL出现了安全漏洞. 说 这个漏洞前,先介绍一下OpenSSL,OpenSSL是一个强大的安全 ...