You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
285 lines
8.9 KiB
C++
285 lines
8.9 KiB
C++
#include "mainwindow.h"
|
|
#include "ui_mainwindow.h"
|
|
#include "CWebEngineView.h"
|
|
#include "CustomWebEnginePage.h"
|
|
#include <QToolBar>
|
|
#include <QFlags>
|
|
#include <QFile>
|
|
#include <qpushbutton.h>
|
|
#include <QAction>
|
|
|
|
MainWindow::MainWindow(QWidget *parent)
|
|
: QMainWindow(parent)
|
|
, ui(new Ui::MainWindow)
|
|
, mWeb(nullptr)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
|
|
initWindow();
|
|
initButton();
|
|
// initMenuBar();
|
|
initToolBar();
|
|
|
|
process = new QProcess(this);
|
|
|
|
// connect(ui->toolbar_action1,&QAction::triggered,this,[this](){
|
|
// qDebug("1111");
|
|
// //m_GDDCdlg->setWindowModality(Qt::ApplicationModal); //设置模态窗口,即窗口没关闭不允许其他操作
|
|
// m_HomePagedlg->move(200,200);
|
|
// m_HomePagedlg->show(); //显示窗口
|
|
// m_GDDCdlg->hide();
|
|
// });
|
|
// connect(ui->toolbar_action2,&QAction::triggered,this,[this](){
|
|
// qDebug("2222");
|
|
// //m_GDDCdlg->setWindowModality(Qt::ApplicationModal); //设置模态窗口,即窗口没关闭不允许其他操作
|
|
// m_GDDCdlg->move(200,200);
|
|
// m_GDDCdlg->show(); //显示窗口
|
|
// m_HomePagedlg->hide();
|
|
// });
|
|
// QFile file(":/qss/style.qss");
|
|
// file.open(QIODevice::ReadOnly);
|
|
// QString stylesheet = QLatin1String(file.readAll());
|
|
// file.colse();
|
|
// qApp->setStyleSheet(stylesheet);
|
|
|
|
//apply the qss
|
|
QFile file(":/res/Qss/qss.qss");
|
|
if(file.open(QFile::ReadOnly))
|
|
{
|
|
file.open(QFile::ReadOnly);
|
|
QString style = QLatin1String(file.readAll());
|
|
|
|
qApp->setStyleSheet(style);
|
|
qDebug()<<style;
|
|
file.close();
|
|
}
|
|
else
|
|
{
|
|
|
|
qDebug()<<"Open file fail "<<Qt::endl;
|
|
}
|
|
}
|
|
|
|
MainWindow::~MainWindow()
|
|
{
|
|
delete ui;
|
|
delete mWeb;
|
|
}
|
|
void MainWindow::initWindow()
|
|
{
|
|
setWindowIcon(QIcon(":/res/SDFP.png"));
|
|
|
|
//设置主窗口背景颜色
|
|
QPalette palette;
|
|
palette.setColor(QPalette::Window,QColor(51, 51, 51));
|
|
this->setPalette(palette);
|
|
this->setWindowTitle("载荷应用软件");
|
|
this->resize(1200,840);
|
|
|
|
m_GDDCdlg = new GDDCdlg(this);
|
|
m_HomePagedlg = new HomePageDlg(this);
|
|
mWeb = new CWebEngineView();
|
|
mWeb->setPage(new CustomWebEnginePage());
|
|
// mWeb = new QWebEngineView(this);
|
|
|
|
|
|
ui->SubPage->addWidget(mWeb);
|
|
ui->SubPage->addWidget(m_GDDCdlg);
|
|
ui->SubPage->addWidget(m_HomePagedlg);
|
|
}
|
|
void MainWindow::initButton()
|
|
{
|
|
QString style = /**正常情况下样式**/
|
|
"QPushButton{"
|
|
"font: 12pt '微软雅黑';"
|
|
"color: #2f3640;"
|
|
"background-color: #f5f6fa;"
|
|
"border-color: #2f3640;"
|
|
"border-radius: 15px;"
|
|
"border-style: solid;"
|
|
"border-width: 2px;"
|
|
"padding: 5px;"
|
|
"}"
|
|
|
|
/**鼠标停留在按钮上的样式**/
|
|
"QPushButton::hover{"
|
|
"color: #FFFFFF;"
|
|
"background-color: #718093;"
|
|
"border-color: #2f3640;"
|
|
"}"
|
|
|
|
/**鼠标按压下去的样式**/
|
|
"QPushButton::pressed,QPushButton::checked{"
|
|
"color: #FFFFFF;"
|
|
"background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #273c75, stop:1 #487eb0);"
|
|
"}"
|
|
|
|
/**按钮失能情况下样式**/
|
|
"QPushButton::disabled{"
|
|
"color: #FFFFFF;"
|
|
"background-color: #dcdde1;"
|
|
"border-color: #dcdde1;"
|
|
"}";
|
|
|
|
ui->pushButton->setStyleSheet(style);
|
|
ui->pushButton_2->setStyleSheet(style);
|
|
ui->pushButton_3->setStyleSheet(style);
|
|
ui->pushButton_4->setStyleSheet(style);
|
|
ui->pushButton_5->setStyleSheet(style);
|
|
ui->pushButton_6->setStyleSheet(style);
|
|
ui->pushButton_7->setStyleSheet(style);
|
|
ui->pushButton_8->setStyleSheet(style);
|
|
}
|
|
void MainWindow::initMenuBar()
|
|
{
|
|
QMenuBar *menuBar = new QMenuBar(this);
|
|
this->setMenuBar(menuBar);
|
|
|
|
QMenu *menu1 = new QMenu("菜单1",this);
|
|
QMenu *menu2 = new QMenu("菜单2",this);
|
|
QMenu *menu3 = new QMenu("菜单3",this);
|
|
QMenu *menu4 = new QMenu("菜单4",this);
|
|
QMenu *menu5 = new QMenu("菜单5",this);
|
|
QMenu *menu6 = new QMenu("菜单6",this);
|
|
QMenu *menu7 = new QMenu("菜单7",this);
|
|
|
|
menuBar->addMenu(menu1);
|
|
menuBar->addMenu(menu2);
|
|
menuBar->addMenu(menu3);
|
|
menuBar->addMenu(menu4);
|
|
menuBar->addMenu(menu5);
|
|
menuBar->addMenu(menu6);
|
|
menuBar->addMenu(menu7);
|
|
menuBar->setStyleSheet("QMenuBar{color:rgb(255,255,255);background:rgb(0,0,0);}");//设置颜色
|
|
}
|
|
void MainWindow::initToolBar()
|
|
{
|
|
// QToolBar *toolBar = new QToolBar("toolBar",this);
|
|
// this->addToolBar(Qt::LeftToolBarArea,toolBar);
|
|
// toolBar->setFloatable(false);//设置可浮动
|
|
// toolBar->setMovable(true);//可移动
|
|
|
|
// //QAction *actionToolBar = new QAction(/*QIcon("res/主页.png"),*/"主页",this);
|
|
// QAction *actionToolBar = new QAction(QIcon(":/res/SDFP.png"),"主 页",this);
|
|
// QAction *actionToolBar2 = new QAction(QIcon(":/res/GDDC.png"),"光电吊舱",this);
|
|
// QAction *actionToolBar3 = new QAction(QIcon(":/res/LChain.png"),"L 链",this);
|
|
// QAction *actionToolBar4 = new QAction(QIcon(":/res/adHoc.png"),"自组网 ",this);
|
|
// QAction *actionToolBar5 = new QAction(QIcon(":/res/PDTColony.png"),"PDT集群",this);
|
|
// QAction *actionToolBar6 = new QAction(QIcon(":/res/Kusatellite.png"),"Ku卫通",this);
|
|
// QAction *actionToolBar7 = new QAction(QIcon(":/res/SearchPayload.png"),"搜集载荷",this);
|
|
// QAction *actionToolBar8 = new QAction(QIcon(":/res/3DModeling.png"),"三维建模",this);
|
|
|
|
|
|
// toolBar->addAction(actionToolBar);
|
|
// toolBar->addAction(actionToolBar2);
|
|
// toolBar->addAction(actionToolBar3);
|
|
// toolBar->addAction(actionToolBar4);
|
|
// toolBar->addAction(actionToolBar5);
|
|
// toolBar->addAction(actionToolBar6);
|
|
// toolBar->addAction(actionToolBar7);
|
|
// toolBar->addAction(actionToolBar8);
|
|
// toolBar->setAllowedAreas(Qt::LeftToolBarArea|Qt::RightToolBarArea|Qt::TopToolBarArea);
|
|
// toolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
|
|
// toolBar->setStyleSheet("color:white;slection-background-color:green");//设置颜色
|
|
// ui->toolBar->addAction(ui->toolbar_action1);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action2);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action3);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action4);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action5);
|
|
// // ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action6);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action7);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->addAction(ui->toolbar_action8);
|
|
// //ui->toolBar->addSeparator();
|
|
// ui->toolBar->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
|
|
// ui->toolBar->setStyleSheet("QToolBar:{color:white;}"
|
|
// "QToolBar:hover{background-color:rgb(100,100,100);color:rgb(200,200,200);}"
|
|
// "QToolBar:pressed{background-color:blue;}");
|
|
|
|
/*"QAction:hover{background-color:white; color: green;}"*/
|
|
/*"QAction:pressed{background-color:rgb(100, 100, 100);}");*/
|
|
}
|
|
|
|
|
|
//主页
|
|
void MainWindow::on_pushButton_clicked()
|
|
{
|
|
//m_HomePagedlg->move(130,80);
|
|
m_HomePagedlg->show(); //显示窗口
|
|
m_GDDCdlg->hide();
|
|
mWeb->hide();
|
|
}
|
|
//光电吊舱
|
|
void MainWindow::on_pushButton_2_clicked()
|
|
{
|
|
//m_GDDCdlg->move(130,80);
|
|
m_GDDCdlg->show(); //显示窗口
|
|
m_HomePagedlg->hide();
|
|
mWeb->hide();
|
|
}
|
|
|
|
//L链
|
|
void MainWindow::on_pushButton_3_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
}
|
|
|
|
//自组网
|
|
void MainWindow::on_pushButton_4_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
|
|
//process->kill();
|
|
}
|
|
|
|
//PDT集群
|
|
void MainWindow::on_pushButton_5_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
|
|
|
|
// process->setWorkingDirectory("F:/显控软件_20240606"); // 设置工作目录
|
|
// process->start("F:/显控软件_20240606/ViewControlStudio.exe"); // 启动exe并传递参数
|
|
}
|
|
|
|
//Ku卫通
|
|
void MainWindow::on_pushButton_6_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
|
|
mWeb->load(QUrl("https://www.baidu.com"));
|
|
mWeb->show();
|
|
|
|
|
|
}
|
|
|
|
//搜救载荷
|
|
void MainWindow::on_pushButton_7_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
// mWeb->stop();
|
|
mWeb->load(QUrl("https://cn.bing.com/"));
|
|
mWeb->show();
|
|
|
|
//
|
|
}
|
|
|
|
//三维建模
|
|
void MainWindow::on_pushButton_8_clicked()
|
|
{
|
|
m_HomePagedlg->hide();
|
|
m_GDDCdlg->hide();
|
|
}
|