QTableView类提供了一个表视图的默认模型/视图实现。

一个QTableView实现一个表视图,它显示来自一个模型的项目。这个类用于提供以前由QTable类提供的标准表,但是使用Qt的模型/视图体系结构提供的更灵活的方法。

QTableView类是模型/视图类之一,也是Qt的模型/视图框架的一部分。

QTableView实现由q抽象视图类定义的接口,允许它显示由q抽象模型类派生的模型所提供的数据。

导航

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QCheckBox>
#include<QDebug>
#include<QCloseEvent>
#include<QMessageBox>
#include <QStandardItemModel>
#include <QStandardItem>
#include <QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QStandardItemModel* Model = new QStandardItemModel();
//设置列的数量
Model->setColumnCount();
Model->setHeaderData(,Qt::Horizontal,QString::fromLocal8Bit("name"));
Model->setHeaderData(,Qt::Horizontal,QString::fromLocal8Bit("age"));
//设置表格属性
ui->tableView->setModel(Model);
//表头信息显示居左
ui->tableView->horizontalHeader()->setDefaultAlignment(Qt::AlignLeft);
//设置列宽
ui->tableView->setColumnWidth(,);
ui->tableView->setColumnWidth(,); //添加元素
for(int i=;i<;i++)
{
Model->setItem(i,,new QStandardItem(QString("名字%1").arg(i)));
Model->setItem(i,,new QStandardItem(QString("1%1").arg(i)));
}
//监视哪一行被修改
connect(Model,&QStandardItemModel::itemChanged,[this](QStandardItem*item){
qDebug()<<item->row()<<endl;
});
connect(ui->checkBox,&QCheckBox::stateChanged,[this](int state){
qDebug()<<state<<endl;
switch (state) {
case Qt::Checked:
qDebug()<<"被选中"<<endl;
break;
case Qt::Unchecked:
qDebug()<<"取消选中"<<endl;
break;
case Qt::PartiallyChecked:
qDebug()<<"未被完全选中"<<endl;
break;
default:
break;
}
});
} MainWindow::~MainWindow()
{
delete ui;
} void MainWindow::closeEvent(QCloseEvent *event)
{
if(event->type()== QEvent::Close)
{
int ret = QMessageBox::question(this,tr("Are you sure it's closed?"),tr("Are you sure it's closed?"));
if(ret == QMessageBox::Yes)
{
event->accept();
}else
{
event->ignore();
}
}
}

最重实现效果:

QTableView 控件的简单使用的更多相关文章

  1. WebBrowser控件的简单应用2

    原文:WebBrowser控件的简单应用2 第一个简单应用里面讲述的是如何模拟调用当前网页的元素的事件或者赋值/取值.这次的应用讲述的是1:如何处理弹出新页面的事件(总是在我的浏览器里面现实新页面)2 ...

  2. vs2005中的WebBrowser控件的简单应用

    原文:vs2005中的WebBrowser控件的简单应用 这个控件被封装了一下,和以前的调用方式稍有不同.事件还是那几个,变化不大.方法变了不少.从网上能查到的资料不多,贴出一些代码来作参考.看看这段 ...

  3. 安卓Design包之TabLayout控件的简单使用

    Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,在这个supp ...

  4. IOS自定义日历控件的简单实现(附思想及过程)

    因为程序要求要插入一个日历控件,该空间的要求是从当天开始及以后的六个月内的日历,上网查资料基本上都说只要获取两个条件(当月第一天周几和本月一共有多少天)就可以实现一个简单的日历,剩下的靠自己的简单逻辑 ...

  5. Android PullToRefresh下拉刷新控件的简单使用

    PullToRefresh这个开源库早就听说了,不过一直没用过.作为一个经典的的开源库,我觉得还是有必要认识一下. 打开github上的网址:https://github.com/chrisbanes ...

  6. js jsp 时间 日期 控件 插件 简单 实用

    js时间控件一般都是找网上的用,这东西平常很少涉及到,一用到找起来却烦死人,不是没用就是太复杂,今天向大家推荐一个简单实用的控件,该控件在不断更新,而且有专门的网站对它进行维护,所以值得一看. 先说它 ...

  7. iOS 搜索框控件 最简单的dome

    刚学习搜索框控件,写了个最简单的dome #import <UIKit/UIKit.h> .h @interface ViewController : UIViewController&l ...

  8. wxPython中按钮、文本控件的简单运用

    本节学习图形用户界面 ------------------------ 本节介绍如何创建python程序的图形用户界面(GUI),也就是那些带有按钮和文本框的窗口.这里介绍wxPython : 下载地 ...

  9. 【2017-05-18】WebForm的Repeater控件及简单控件

    <%@ %> - 这里面写一些声明和引用的 <%  %> - 编写C#代码的 <%= %> - 往界面上输出一个变量的值 <%# Eval("属性名 ...

随机推荐

  1. javascript内置函数

    1.Date:日期函数属性(1):constructor 所修立对象的函数参考prototype 能够为对象加进的属性和方法办法(43):getDay() 返回一周中的第几天(0-6)getYear( ...

  2. spring配置文件各个属性详解

    一.引用外部属性文件 <bean id="propertyConfigurer" class="org.springframework.beans.factory. ...

  3. oracle函数 sys_guid()

    [功能]生产32位的随机数,不过中间包括一些大写的英文字母. [返回]长度为32位的字符串,包括0-9和大写A-F [示例] select sys_guid() from  dual

  4. HZOJ 方程的解

    乍一看还以为是道水题,没想到这玩意这么难搞. 看题显然是exgcd,然而exgcd求的是一个解而不是解的个数(考试的时候不记得通解的式子然后挂了). 对于40%的数据,直接枚举计数即可. 对于另为20 ...

  5. @topcoder - SRM577D1L3@ XorAndSum

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给出 N 个数,每次操作可以任意选择两个数,将其中一个替换为两个 ...

  6. CondaHTTPError: HTTP 000 CONNECTION FAILED

    [root@localhost ~]# conda install samtools Solving environment: failed CondaHTTPError: HTTP 000 CONN ...

  7. Lua环境搭建之使用EditPlus搭建Lua开发环境

    luatools正则表达式extension工具encoding 一.语法高亮 打开 EditPlus,Tools 工具-->Preferences首选项==>setting & ...

  8. Oracle备库宕机启动解决方案

    简介 ORA-10458: standby database requires recovery ORA-01196: 文件 1 由于介质恢复会话失败而不一致 ORA-01110: 数据文件 1: ' ...

  9. 【u228】圣诞树

    [问题描述] 圣诞特别礼物挂在一棵圣诞树上,这棵树有n层,每层有一件礼物,每件礼物都有一个价值,有的礼物还有一些连结线,与下层的礼物相连,领取礼物的规则如下:任选一件礼物,它的下面如果有连结线,则可以 ...

  10. python基础六之编码

    python中编码的特点: 1,各个编码之间的二进制是不能互相识别的,会产生乱码 2,文件的储存和传输是不能用Unicode的 python3的编码 在python3中字符串在内存中是用Unicode ...