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 ...
随机推荐
- forword属性
forword属性 2013年7月8日 15:07 Name: Forward的名字,与mapping.findForward方法传入的值相同. Path: 请求转发的页面路径 Redirect: 请 ...
- Machine Learning 学习笔记 (2) —— 使用牛顿法寻找极值
本系列文章允许转载,转载请保留全文! [请先阅读][说明&总目录]http://www.cnblogs.com/tbcaaa8/p/4415055.html 1. 用牛顿法解方程 牛顿法是一种 ...
- COS中访问文件的三种方式
1.通过FID来访问文件(比如EF,DF) 2.通过SFI来访问文件(有些COS命令可以通过SFI来快速访问文件,而不需要事先选中文件) 3.通过文件名来访问文件(只能是DF文件)
- UITableView设置cell为不可选?
本文选自StackOverflow(简称:SOF)精选问答汇总系列文章之一,本系列文章将为读者分享国外最优质的精彩问与答,供读者学习和了解国外最新技术.本文将为读者讲解UITableView如何设置单 ...
- Sprint会议-初步组织划分
主题:Spring冲刺计划会议,组员已认领方式领取任务,对个人任务进行详细划分. 日期:2015.4.26 地点:学一食堂二楼 与会人员:王雪青.陆宇.徐擎天.张文冬.赵建松 索引表 因早期任务的认领 ...
- SharedPreferences实现记住密码功能
SharedPerferences 简单介绍 用于保存简单的键值对数据: 它将数据放在 /data/data/<package name>/shared_prefs目录下,用xml文件保存 ...
- sentinel.conf配置
1.常用的配置 port 26379 # sentinel announce-ip <ip> # sentinel announce-port <port> dir /tmp ...
- 【BZOJ】【3207】花神的嘲讽计划 I
字符串Hash+可持久化线段树 好神奇的转化…… 蒟蒻一开始还去想AC自动机去了……然而由于a[i]的范围是小于等于n,怎么也想不出一个时间复杂度合理的方法 膜拜了题解0.0原来是字符串Hash! 首 ...
- OrzFAng系列–树 解题报告
题目描述 方方方种下了三棵树,两年后,第二棵树长出了n个节点,其中1号节点是根节点. 给定一个n个点的树 支持两种操作 方方方进行m次操作,每个操作为: (1)给出两个数i,x,将第i个节点的子树中, ...
- JS中的间歇(周期)调用setInterval()与超时(延迟)调用setTimeout()相关总结
超时调用需要使用window.setTimeout(code,millisec)方法 它接受两个参数:要执行的代码和以毫秒表示的时间(即在执行代码前需要等待多少毫秒).其中第一个参数可以是一个包含JS ...