#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QStandardItem"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//提供了用于存储自定义数据的通用模型
QStandardItemModel *model = new QStandardItemModel(13,2);
model->setHeaderData(0,Qt::Horizontal,tr("参数名"));
model->setHeaderData(1,Qt::Horizontal,tr("参数值"));
QStringList dataName;
dataName <<"系统工作状态"
<<"通讯站号"
<<"通讯波特率"
<<"烟感状态1"
<<"烟感状态2"
<<"水浸状态1"
<<"水浸状态2"
<<"前门状态"
<<"后门状态"
<<"人体感应状态1"
<<"人体感应状态2"
<<"输入9状态"
<<"输入10状态";
QStringList Value;
Value <<"0"
<<"0"
<<"115200"
<<"1"
<<"1"
<<"1"
<<"0"
<<"1"
<<"1"
<<"1"
<<"1"
<<"0"
<<"0";
//循环插入数据
for(int row=0;row<13;row++)
{
model->insertRows(row,1); //插入一行
model->setData(model->index(row,0), dataName.at(row)); //插入第一列 插入一个1000-2000的随机数
model->setData(model->index(row,1), Value.at(row));
//设置为居中
model->item(row,0)->setTextAlignment(Qt::AlignCenter);
model->item(row,1)->setTextAlignment(Qt::AlignCenter);
}
ui->tableView->horizontalHeader()->setVisible(true);//显示或隐藏表头
ui->tableView->verticalHeader()->setVisible(false);//显示或隐藏序列行
ui->tableView->setAutoScroll(true);//自动滚动条
//ui->tableView->resizeColumnsToContents(); //根据内容调整大小
ui->tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);//根据容器调整大小
ui->tableView->setEditTriggers(QAbstractItemView::NoEditTriggers);//只读
ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows); //设置选中模式为选中行
ui->tableView->setSelectionMode( QAbstractItemView::SingleSelection); //设置选中单行
ui->tableView->setModel(model); //使用
}
MainWindow::~MainWindow()
{
delete ui;
}