#include "statusTestWin.h" #include "ui_statusTestWin.h" #include #include StatusTestWin::StatusTestWin(QWidget *parent) : QWidget(parent) , ui(new Ui::StatusTestWin) { ui->setupUi(this); statusModel = new QStandardItemModel(this); statusSelect = new QItemSelectionModel(statusModel); statusModel->setColumnCount(3); ui->tableView->setModel(statusModel); ui->tableView->setSelectionModel(statusSelect); ui->tableView->horizontalHeader()->setVisible(false); ui->tableView->verticalHeader()->setVisible(false); ui->tableView->horizontalHeader()->setStretchLastSection(true); ui->tableView->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch); ui->tableView->setWordWrap(true); QFont font = ui->tableView->font(); font.setBold(true); QList aItemList; QStandardItem *aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readRnSnBtn = new QPushButton("读取RNSS北斗序列号"); readRnSnBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readRnSnBtn->setFont(font); readRnSnBtn->setDefault(true); //QFontMetrics metrics = readRnSnBtn->fontMetrics(); //int minW = metrics.horizontalAdvance("读取RNSS北斗序列号")+40; //readRnSnBtn->setMinimumWidth(minW); //ui->tableView->setColumnWidth(0,minW); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readRnSnBtn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readMPD9Btn = new QPushButton("读取MPD009编号"); readMPD9Btn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readMPD9Btn->setFont(font); readMPD9Btn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readMPD9Btn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readMPD7Btn = new QPushButton("读取MPD007编号"); readMPD7Btn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readMPD7Btn->setFont(font); readMPD7Btn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readMPD7Btn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readPrmBtn = new QPushButton("读取PRM编号"); readPrmBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readPrmBtn->setFont(font); readPrmBtn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readPrmBtn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readMPD7DateBtn = new QPushButton("读取MPD007有效期"); readMPD7DateBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readMPD7DateBtn->setFont(font); readMPD7DateBtn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readMPD7DateBtn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readPrmDateBtn = new QPushButton("读取PRM有效期"); readPrmDateBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readPrmDateBtn->setFont(font); readPrmDateBtn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readPrmDateBtn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); //多一行空白行合并,使该行变宽 aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); ui->tableView->setSpan(statusModel->rowCount()-2,0,2,2); ui->tableView->setSpan(statusModel->rowCount()-2,2,2,1); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readRdSnBtn = new QPushButton("读取RDSS北斗序列号"); readRdSnBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readRdSnBtn->setFont(font); readRdSnBtn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readRdSnBtn); ui->tableView->setSpan(statusModel->rowCount()-1,0,1,2); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem("北斗ID号"); aItem->setFont(font); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); QPushButton *readIdBtn = new QPushButton("读取北斗ID号"); readIdBtn->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); readIdBtn->setFont(font); readIdBtn->setDefault(true); ui->tableView->setIndexWidget(statusModel->index(statusModel->rowCount()-1,0),readIdBtn); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem("服务频度"); aItem->setFont(font); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem("通信等级"); aItem->setFont(font); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem("通播地址"); aItem->setFont(font); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); aItemList.clear(); aItem = new QStandardItem(""); aItem->setEditable(false); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem("保密标志"); aItem->setFont(font); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); aItem = new QStandardItem(""); aItem->setTextAlignment(Qt::AlignCenter); aItemList.append(aItem); statusModel->insertRow(statusModel->rowCount(),aItemList); ui->tableView->setSpan(statusModel->rowCount()-5,0,5,1); } StatusTestWin::~StatusTestWin() { delete ui; }