#include "frmview.h" #include "ui_frmview.h" #include "quihelper.h" #include "appinit.h" #include "frmviewdevice.h" frmView::frmView(QWidget *parent) : QWidget(parent), ui(new Ui::frmView) { ui->setupUi(this); this->initForm(); this->initTree(); this->initNav(); } frmView::~frmView() { delete ui; } void frmView::initForm() { connect(AppEvent::Instance(), SIGNAL(changeStyle()), this, SLOT(initTree())); connect(AppEvent::Instance(), SIGNAL(fullScreen(bool)), this, SLOT(fullScreen(bool))); } void frmView::initTree() { ui->treeWidget->clear(); ui->treeWidget->setAnimated(false); ui->treeWidget->setHeaderHidden(true); //ui->treeWidget->setIndentation(0); //ui->treeWidget->setHeaderLabel("设备列表"); QStringList texts; texts << "录像机#1" << "录像机#2" << "录像机#3"; QPixmap iconParent = IconHelper::getPixmap(QUIConfig::TextColor, 0xea23, 18, 20, 20); QPixmap iconChild = IconHelper::getPixmap(QUIConfig::TextColor, 0xea07, 18, 20, 20); for (int i = 0; i < texts.count(); i++) { //添加父节点 QTreeWidgetItem *itemParent = new QTreeWidgetItem(ui->treeWidget); itemParent->setText(0, texts.at(i)); itemParent->setIcon(0, iconParent); //循环添加子节点 for (int j = 0; j < 10; j++) { QTreeWidgetItem *itemChild = new QTreeWidgetItem(itemParent); itemChild->setText(0, QString("摄像机#%1").arg(j + 1)); itemChild->setIcon(0, iconChild); } } ui->treeWidget->expandAll(); } void frmView::initNav() { ui->stackedWidget->addWidget(new frmViewDevice); QList texts; texts << "地图监控" << "数据监控"; //这里临时用qlabel加粗显示,可以改成自己的widget窗体 QString qss = "font:100px;"; for (int i = 0; i < texts.count(); i++) { QLabel *lab = new QLabel; lab->setAlignment(Qt::AlignCenter); lab->setText(texts.at(i)); lab->setStyleSheet(qss); lab->setAutoFillBackground(true); ui->stackedWidget->addWidget(lab); } } void frmView::setIndex(int index) { ui->stackedWidget->setCurrentIndex(index); } void frmView::fullScreen(bool full) { ui->treeWidget->setVisible(!full); }