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. Spring IoC 使用详解

    在Spring中,依赖注入(DI)模式实现了控制反转(IoC)原理.让我们通过一个例子来帮助理解依赖注入.我们先看到java版的例子,然后在此基础上加上spring的功能.就例子而言,是相当地简单.Q ...

  2. python 找出矩阵中非零数

  3. webpack详述

    一.利用package.json执行打包任务 首先使用npm init生成package.json文件:然后配置scripts如下: "scripts": { "buil ...

  4. 【HAOI2015】树上染色

    [HAOI2015]树上染色 这题思路好神仙啊,首先显然是树形dp,f[i][j]表示在以i为根的子树中选j个黑点对答案的贡献(并不是当前子树最大值),dp时只考虑i与儿子连边的贡献.此时(i,son ...

  5. H3C 代理ARP

  6. 给radio添加点击事件

    1.单独给每个radio添加点击事件 <fieldset id="form-gra-time"> <legend>请选择日期粒度:</legend&g ...

  7. typescript基础语法--变量/函数/指令/类

    博客地址 :https://www.cnblogs.com/sandraryan/ 要把ts文件引入到html中,首先要转码为js文件. 步骤: 终端运行: npm i -g typescript t ...

  8. 2019-6-23-修复-dotnet-Core-缺SDK编译失败

    title author date CreateTime categories 修复 dotnet Core 缺SDK编译失败 lindexi 2019-6-23 10:55:9 +0800 2019 ...

  9. Python--day24--继承面试题

    输出:(打印的是Dog.func而不是Animal.func) __init__方法如果本生的类具有的话,父类的__init__方法就不在调用,没有才调用父类的__init__方法 派生属性: 如果既 ...

  10. Python--day31--黏包(不熟...)