From 39df8979bc621b7c880e6a3f431f78ab8dac1ff7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Czcw=E2=80=9D?= Date: Fri, 12 May 2023 01:00:29 +0800 Subject: [PATCH] =?UTF-8?q?0512=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 6 +- AnalyticUI/ClearanceAnalyticUI.h | 112 +++++ AnalyticUI/FlangeAnalyticUI.h | 141 ++++++ AnalyticUI/GyroscopeAnalyticUI.h | 106 +++++ CMakeLists.txt | 69 +++ CMakeLists.txt.user | 712 +++++++++++++++++++++++++++++++ CMakeSettings.json | 15 + DAM.qrc | 6 + MainWindow.cpp | 18 + MainWindow.h | 26 ++ MonitorUI/MonitorTagUI.h | 176 ++++++++ MonitorUI/MonitorUI.h | 173 ++++++++ Static/close.png | Bin 0 -> 2248 bytes Static/min.png | Bin 0 -> 1059 bytes main.cpp | 13 + ui_MainWindow.h | 171 ++++++++ 16 files changed, 1741 insertions(+), 3 deletions(-) create mode 100644 AnalyticUI/ClearanceAnalyticUI.h create mode 100644 AnalyticUI/FlangeAnalyticUI.h create mode 100644 AnalyticUI/GyroscopeAnalyticUI.h create mode 100644 CMakeLists.txt create mode 100644 CMakeLists.txt.user create mode 100644 CMakeSettings.json create mode 100644 DAM.qrc create mode 100644 MainWindow.cpp create mode 100644 MainWindow.h create mode 100644 MonitorUI/MonitorTagUI.h create mode 100644 MonitorUI/MonitorUI.h create mode 100644 Static/close.png create mode 100644 Static/min.png create mode 100644 main.cpp create mode 100644 ui_MainWindow.h diff --git a/.gitignore b/.gitignore index 58e36ad..2e9bc98 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -.vs/ -.vscode/ -.out/ +/.vs/ +/.vscode/ +/out/ *.ui \ No newline at end of file diff --git a/AnalyticUI/ClearanceAnalyticUI.h b/AnalyticUI/ClearanceAnalyticUI.h new file mode 100644 index 0000000..796c322 --- /dev/null +++ b/AnalyticUI/ClearanceAnalyticUI.h @@ -0,0 +1,112 @@ +/******************************************************************************** +** Form generated from reading UI file 'ClearanceAnalyticUI nGNfzD.ui' +** +** Created by: Qt User Interface Compiler version 5.14.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef CLEARANCEANALYTICUI_20_NGNFZD_H +#define CLEARANCEANALYTICUI_20_NGNFZD_H + +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_ClearanceAnalyticWidget:public QWidget +{ +public: + QHBoxLayout *horizontalLayout; + QListView *deviceList; + QWidget *displayWidget; + QGridLayout *gridLayout; + QWidget *infoWidget; + QVBoxLayout *verticalLayout; + QLabel *infoLabel; + QLabel *trendLabel; + + void setupUi(QWidget *ClearanceAnalyticWidget) + { + if (ClearanceAnalyticWidget->objectName().isEmpty()) + ClearanceAnalyticWidget->setObjectName(QString::fromUtf8("ClearanceAnalyticWidget")); + ClearanceAnalyticWidget->resize(1228, 773); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Ignored); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(ClearanceAnalyticWidget->sizePolicy().hasHeightForWidth()); + ClearanceAnalyticWidget->setSizePolicy(sizePolicy); + horizontalLayout = new QHBoxLayout(ClearanceAnalyticWidget); + horizontalLayout->setSpacing(0); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + deviceList = new QListView(ClearanceAnalyticWidget); + deviceList->setObjectName(QString::fromUtf8("deviceList")); + + horizontalLayout->addWidget(deviceList); + + displayWidget = new QWidget(ClearanceAnalyticWidget); + displayWidget->setObjectName(QString::fromUtf8("displayWidget")); + gridLayout = new QGridLayout(displayWidget); + gridLayout->setSpacing(0); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setContentsMargins(0, 0, 0, 0); + + horizontalLayout->addWidget(displayWidget); + + infoWidget = new QWidget(ClearanceAnalyticWidget); + infoWidget->setObjectName(QString::fromUtf8("infoWidget")); + verticalLayout = new QVBoxLayout(infoWidget); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + verticalLayout->setContentsMargins(0, 0, 0, 0); + infoLabel = new QLabel(infoWidget); + infoLabel->setObjectName(QString::fromUtf8("infoLabel")); + + verticalLayout->addWidget(infoLabel); + + trendLabel = new QLabel(infoWidget); + trendLabel->setObjectName(QString::fromUtf8("trendLabel")); + + verticalLayout->addWidget(trendLabel); + + + horizontalLayout->addWidget(infoWidget); + + horizontalLayout->setStretch(0, 5); + horizontalLayout->setStretch(1, 10); + horizontalLayout->setStretch(2, 5); + + retranslateUi(ClearanceAnalyticWidget); + + QMetaObject::connectSlotsByName(ClearanceAnalyticWidget); + } // setupUi + + void retranslateUi(QWidget *ClearanceAnalyticWidget) + { + ClearanceAnalyticWidget->setWindowTitle(QCoreApplication::translate("ClearanceAnalyticWidget", "Form", nullptr)); + infoLabel->setText(QCoreApplication::translate("ClearanceAnalyticWidget", "\345\256\236\346\227\266\344\277\241\346\201\257", nullptr)); + trendLabel->setText(QCoreApplication::translate("ClearanceAnalyticWidget", "\345\233\276\350\241\250\344\277\241\346\201\257", nullptr)); + } // retranslateUi + + Ui_ClearanceAnalyticWidget() + { + setupUi(this); + } + + +}; + +namespace Ui { + class ClearanceAnalyticWidget: public Ui_ClearanceAnalyticWidget {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // CLEARANCEANALYTICUI_20_NGNFZD_H diff --git a/AnalyticUI/FlangeAnalyticUI.h b/AnalyticUI/FlangeAnalyticUI.h new file mode 100644 index 0000000..b3cb8fa --- /dev/null +++ b/AnalyticUI/FlangeAnalyticUI.h @@ -0,0 +1,141 @@ +/******************************************************************************** +** Form generated from reading UI file 'FlangeAnalyticUILTsZHk.ui' +** +** Created by: Qt User Interface Compiler version 5.14.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef FLANGEANALYTICUILTSZHK_H +#define FLANGEANALYTICUILTSZHK_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_FlangeAnalyticWidget:public QWidget +{ +public: + QHBoxLayout *horizontalLayout; + QListView *deviceList; + QWidget *displayWidget; + QGridLayout *gridLayout; + QListView *flangeList; + QSpacerItem *verticalSpacer; + QSpacerItem *horizontalSpacer; + QWidget *infoWidget; + QVBoxLayout *verticalLayout; + QHBoxLayout *horizontalLayout_2; + QLabel *flangePiclabel; + QLabel *infoLabel; + QLabel *trendLabel; + + void setupUi(QWidget *FlangeAnalyticWidget) + { + if (FlangeAnalyticWidget->objectName().isEmpty()) + FlangeAnalyticWidget->setObjectName(QString::fromUtf8("FlangeAnalyticWidget")); + FlangeAnalyticWidget->resize(1228, 773); + horizontalLayout = new QHBoxLayout(FlangeAnalyticWidget); + horizontalLayout->setSpacing(0); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + deviceList = new QListView(FlangeAnalyticWidget); + deviceList->setObjectName(QString::fromUtf8("deviceList")); + + horizontalLayout->addWidget(deviceList); + + displayWidget = new QWidget(FlangeAnalyticWidget); + displayWidget->setObjectName(QString::fromUtf8("displayWidget")); + gridLayout = new QGridLayout(displayWidget); + gridLayout->setSpacing(0); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setContentsMargins(0, 0, 0, 0); + flangeList = new QListView(displayWidget); + flangeList->setObjectName(QString::fromUtf8("flangeList")); + + gridLayout->addWidget(flangeList, 0, 0, 1, 1); + + verticalSpacer = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding); + + gridLayout->addItem(verticalSpacer, 1, 0, 1, 1); + + horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(horizontalSpacer, 0, 1, 1, 1); + + gridLayout->setRowStretch(0, 1); + gridLayout->setRowStretch(1, 2); + gridLayout->setColumnStretch(0, 1); + gridLayout->setColumnStretch(1, 2); + + horizontalLayout->addWidget(displayWidget); + + infoWidget = new QWidget(FlangeAnalyticWidget); + infoWidget->setObjectName(QString::fromUtf8("infoWidget")); + verticalLayout = new QVBoxLayout(infoWidget); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + verticalLayout->setContentsMargins(0, 0, 0, 0); + horizontalLayout_2 = new QHBoxLayout(); + horizontalLayout_2->setSpacing(0); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + flangePiclabel = new QLabel(infoWidget); + flangePiclabel->setObjectName(QString::fromUtf8("flangePiclabel")); + + horizontalLayout_2->addWidget(flangePiclabel); + + infoLabel = new QLabel(infoWidget); + infoLabel->setObjectName(QString::fromUtf8("infoLabel")); + + horizontalLayout_2->addWidget(infoLabel); + + + verticalLayout->addLayout(horizontalLayout_2); + + trendLabel = new QLabel(infoWidget); + trendLabel->setObjectName(QString::fromUtf8("trendLabel")); + + verticalLayout->addWidget(trendLabel); + + + horizontalLayout->addWidget(infoWidget); + + horizontalLayout->setStretch(0, 5); + horizontalLayout->setStretch(1, 10); + horizontalLayout->setStretch(2, 5); + + retranslateUi(FlangeAnalyticWidget); + + QMetaObject::connectSlotsByName(FlangeAnalyticWidget); + } // setupUi + + void retranslateUi(QWidget *FlangeAnalyticWidget) + { + FlangeAnalyticWidget->setWindowTitle(QCoreApplication::translate("FlangeAnalyticWidget", "Form", nullptr)); + flangePiclabel->setText(QCoreApplication::translate("FlangeAnalyticWidget", "\346\230\276\347\244\272\346\263\225\345\205\260", nullptr)); + infoLabel->setText(QCoreApplication::translate("FlangeAnalyticWidget", "\345\256\236\346\227\266\344\277\241\346\201\257\347\233\221\346\265\213", nullptr)); + trendLabel->setText(QCoreApplication::translate("FlangeAnalyticWidget", "\345\233\276\350\241\250\344\277\241\346\201\257", nullptr)); + } // retranslateUi + + Ui_FlangeAnalyticWidget() + { + setupUi(this); + } + +}; + +namespace Ui { + class FlangeAnalyticWidget: public Ui_FlangeAnalyticWidget {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // FLANGEANALYTICUILTSZHK_H diff --git a/AnalyticUI/GyroscopeAnalyticUI.h b/AnalyticUI/GyroscopeAnalyticUI.h new file mode 100644 index 0000000..32eec49 --- /dev/null +++ b/AnalyticUI/GyroscopeAnalyticUI.h @@ -0,0 +1,106 @@ +/******************************************************************************** +** Form generated from reading UI file 'GyroscopeAnalyticUI NxkAxt.ui' +** +** Created by: Qt User Interface Compiler version 5.14.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef GYROSCOPEANALYTICUI_20_NXKAXT_H +#define GYROSCOPEANALYTICUI_20_NXKAXT_H + +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_GyroscopeAnalyticWidget:public QWidget +{ +public: + QHBoxLayout *horizontalLayout; + QListView *deviceList; + QWidget *displayWidget; + QGridLayout *gridLayout; + QWidget *infoWidget; + QVBoxLayout *verticalLayout; + QLabel *infoLabel; + QLabel *trendLabel; + + void setupUi(QWidget *GyroscopeAnalyticWidget) + { + if (GyroscopeAnalyticWidget->objectName().isEmpty()) + GyroscopeAnalyticWidget->setObjectName(QString::fromUtf8("GyroscopeAnalyticWidget")); + GyroscopeAnalyticWidget->resize(1228, 773); + horizontalLayout = new QHBoxLayout(GyroscopeAnalyticWidget); + horizontalLayout->setSpacing(0); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + deviceList = new QListView(GyroscopeAnalyticWidget); + deviceList->setObjectName(QString::fromUtf8("deviceList")); + + horizontalLayout->addWidget(deviceList); + + displayWidget = new QWidget(GyroscopeAnalyticWidget); + displayWidget->setObjectName(QString::fromUtf8("displayWidget")); + gridLayout = new QGridLayout(displayWidget); + gridLayout->setSpacing(0); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + gridLayout->setContentsMargins(0, 0, 0, 0); + + horizontalLayout->addWidget(displayWidget); + + infoWidget = new QWidget(GyroscopeAnalyticWidget); + infoWidget->setObjectName(QString::fromUtf8("infoWidget")); + verticalLayout = new QVBoxLayout(infoWidget); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + verticalLayout->setContentsMargins(0, 0, 0, 0); + infoLabel = new QLabel(infoWidget); + infoLabel->setObjectName(QString::fromUtf8("infoLabel")); + + verticalLayout->addWidget(infoLabel); + + trendLabel = new QLabel(infoWidget); + trendLabel->setObjectName(QString::fromUtf8("trendLabel")); + + verticalLayout->addWidget(trendLabel); + + + horizontalLayout->addWidget(infoWidget); + + horizontalLayout->setStretch(0, 5); + horizontalLayout->setStretch(1, 10); + horizontalLayout->setStretch(2, 5); + + retranslateUi(GyroscopeAnalyticWidget); + + QMetaObject::connectSlotsByName(GyroscopeAnalyticWidget); + } // setupUi + + void retranslateUi(QWidget *GyroscopeAnalyticWidget) + { + GyroscopeAnalyticWidget->setWindowTitle(QCoreApplication::translate("GyroscopeAnalyticWidget", "Form", nullptr)); + infoLabel->setText(QCoreApplication::translate("GyroscopeAnalyticWidget", "\345\256\236\346\227\266\344\277\241\346\201\257", nullptr)); + trendLabel->setText(QCoreApplication::translate("GyroscopeAnalyticWidget", "\345\233\276\350\241\250\344\277\241\346\201\257", nullptr)); + } // retranslateUi + + Ui_GyroscopeAnalyticWidget() + { + setupUi(this); + } + +}; + +namespace Ui { + class GyroscopeAnalyticWidget: public Ui_GyroscopeAnalyticWidget {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // GYROSCOPEANALYTICUI_20_NXKAXT_H diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..2cabe79 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,69 @@ +set(CMAKE_PREFIX_PATH "F:\\QT\\5.14.2\\msvc2017_64") +cmake_minimum_required(VERSION 3.5) + +project(DAM VERSION 0.1 LANGUAGES CXX) + +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets) +find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets) + +set(PROJECT_SOURCES + main.cpp + MainWindow.cpp + MainWindow.h + MainWindow.ui + ui_MainWindow.h + ./MonitorUI/MonitorUI.h + ./MonitorUI/MonitorTagUI.h + ./AnalyticUI/FlangeAnalyticUI.h + ./AnalyticUI/ClearanceAnalyticUI.h + ./AnalyticUI/GyroscopeAnalyticUI.h + DAM.qrc +) + +if(${QT_VERSION_MAJOR} GREATER_EQUAL 6) + qt_add_executable(DAM + MANUAL_FINALIZATION + ${PROJECT_SOURCES} + ) +# Define target properties for Android with Qt 6 as: +# set_property(TARGET DAM APPEND PROPERTY QT_ANDROID_PACKAGE_SOURCE_DIR +# ${CMAKE_CURRENT_SOURCE_DIR}/android) +# For more information, see https://doc.qt.io/qt-6/qt-add-executable.html#target-creation +else() + if(ANDROID) + add_library(DAM SHARED + ${PROJECT_SOURCES} + ) +# Define properties for Android with Qt 5 after find_package() calls as: +# set(ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android") + else() + add_executable(DAM + ${PROJECT_SOURCES} + ) + endif() +endif() + +target_link_libraries(DAM PRIVATE Qt${QT_VERSION_MAJOR}::Widgets) + +set_target_properties(DAM PROPERTIES + MACOSX_BUNDLE_GUI_IDENTIFIER my.example.com + MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION} + MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} + MACOSX_BUNDLE TRUE + WIN32_EXECUTABLE TRUE +) + +install(TARGETS DAM + BUNDLE DESTINATION . + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) + +if(QT_VERSION_MAJOR EQUAL 6) + qt_finalize_executable(DAM) +endif() diff --git a/CMakeLists.txt.user b/CMakeLists.txt.user new file mode 100644 index 0000000..3dc054a --- /dev/null +++ b/CMakeLists.txt.user @@ -0,0 +1,712 @@ + + + + + + EnvironmentId + {0b83a872-f7c7-49c9-8cc4-ad3a5fed1d02} + + + ProjectExplorer.Project.ActiveTarget + 0 + + + ProjectExplorer.Project.EditorSettings + + true + false + true + + Cpp + + CppGlobal + + + + QmlJS + + QmlJSGlobal + + + 2 + UTF-8 + false + 4 + false + 80 + true + true + 1 + false + true + false + 0 + true + true + 0 + 8 + true + false + 1 + true + true + true + *.md, *.MD, Makefile + false + true + true + + + + ProjectExplorer.Project.PluginSettings + + + true + false + true + true + true + true + + + 0 + true + + true + true + Builtin.DefaultTidyAndClazy + 8 + + + + true + + + + + ProjectExplorer.Project.Target.0 + + Desktop + Desktop Qt 5.14.2 MSVC2017 64bit + Desktop Qt 5.14.2 MSVC2017 64bit + qt.qt5.5142.win64_msvc2017_64_kit + 0 + 0 + 0 + + Debug + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=Debug +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} +-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} + 0 + C:\Users\zcw\Desktop\DAM\build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug + + + + + all + + false + + true + 构建 + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + 构建 + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Debug + CMakeProjectManager.CMakeBuildConfiguration + + + Release + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=Release +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} +-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} + C:\Users\zcw\Desktop\DAM\build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-Release + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Release + CMakeProjectManager.CMakeBuildConfiguration + + + RelWithDebInfo + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} +-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} + C:\Users\zcw\Desktop\DAM\build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-RelWithDebInfo + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Release with Debug Information + CMakeProjectManager.CMakeBuildConfiguration + + + RelWithDebInfo + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} +-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} + 0 + C:\Users\zcw\Desktop\DAM\build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-Profile + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Profile + CMakeProjectManager.CMakeBuildConfiguration + + + MinSizeRel + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=MinSizeRel +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} +-DCMAKE_CXX_FLAGS_INIT:STRING=%{Qt:QML_DEBUG_FLAG} + C:\Users\zcw\Desktop\DAM\build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-MinSizeRel + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Minimum Size Release + CMakeProjectManager.CMakeBuildConfiguration + + 5 + + + 0 + 部署 + 部署 + ProjectExplorer.BuildSteps.Deploy + + 1 + + false + ProjectExplorer.DefaultDeployConfiguration + + 1 + + true + true + true + + 2 + + DAM + CMakeProjectManager.CMakeRunConfiguration.DAM + DAM + false + true + true + false + true + C:/Users/zcw/Desktop/DAM/build-DAM-Desktop_Qt_5_14_2_MSVC2017_64bit-Debug + + 1 + + + + ProjectExplorer.Project.Target.1 + + WebAssemblyDeviceType + Qt 5.14.2 WebAssembly + Qt 5.14.2 WebAssembly + qt.qt5.5142.wasm_32_kit + 0 + -1 + 0 + + Debug + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=Debug +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} + 0 + C:\Users\zcw\Desktop\DAM\build-DAM-Qt_5_14_2_WebAssembly-Debug + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Debug + CMakeProjectManager.CMakeBuildConfiguration + + + Release + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=Release +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} + C:\Users\zcw\Desktop\DAM\build-DAM-Qt_5_14_2_WebAssembly-Release + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Release + CMakeProjectManager.CMakeBuildConfiguration + + + RelWithDebInfo + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} + C:\Users\zcw\Desktop\DAM\build-DAM-Qt_5_14_2_WebAssembly-RelWithDebInfo + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Release with Debug Information + CMakeProjectManager.CMakeBuildConfiguration + + + RelWithDebInfo + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} + 0 + C:\Users\zcw\Desktop\DAM\build-DAM-Qt_5_14_2_WebAssembly-Profile + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Profile + CMakeProjectManager.CMakeBuildConfiguration + + + MinSizeRel + 2 + false + + -DCMAKE_GENERATOR:STRING=Ninja +-DCMAKE_BUILD_TYPE:STRING=MinSizeRel +-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{buildDir}/.qtc/package-manager/auto-setup.cmake +-DQT_QMAKE_EXECUTABLE:FILEPATH=%{Qt:qmakeExecutable} +-DCMAKE_PREFIX_PATH:PATH=%{Qt:QT_INSTALL_PREFIX} +-DCMAKE_C_COMPILER:FILEPATH=%{Compiler:Executable:C} +-DCMAKE_CXX_COMPILER:FILEPATH=%{Compiler:Executable:Cxx} + C:\Users\zcw\Desktop\DAM\build-DAM-Qt_5_14_2_WebAssembly-MinSizeRel + + + + + all + + false + + true + CMakeProjectManager.MakeStep + + 1 + 构建 + 构建 + ProjectExplorer.BuildSteps.Build + + + + + + clean + + false + + true + CMakeProjectManager.MakeStep + + 1 + 清除 + 清除 + ProjectExplorer.BuildSteps.Clean + + 2 + false + + false + + Minimum Size Release + CMakeProjectManager.CMakeBuildConfiguration + + 5 + 0 + + true + true + true + + 2 + + ProjectExplorer.CustomExecutableRunConfiguration + + false + true + false + true + + 1 + + + + ProjectExplorer.Project.TargetCount + 2 + + + ProjectExplorer.Project.Updater.FileVersion + 22 + + + Version + 22 + + diff --git a/CMakeSettings.json b/CMakeSettings.json new file mode 100644 index 0000000..9204f06 --- /dev/null +++ b/CMakeSettings.json @@ -0,0 +1,15 @@ +{ + "configurations": [ + { + "name": "x64-Debug", + "generator": "Ninja", + "configurationType": "Debug", + "inheritEnvironments": [ "msvc_x64_x64" ], + "buildRoot": "${projectDir}\\out\\build\\${name}", + "installRoot": "${projectDir}\\out\\install\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "", + "ctestCommandArgs": "" + } + ] +} \ No newline at end of file diff --git a/DAM.qrc b/DAM.qrc new file mode 100644 index 0000000..250af38 --- /dev/null +++ b/DAM.qrc @@ -0,0 +1,6 @@ + + + Static/close.png + Static/min.png + + diff --git a/MainWindow.cpp b/MainWindow.cpp new file mode 100644 index 0000000..c7c9787 --- /dev/null +++ b/MainWindow.cpp @@ -0,0 +1,18 @@ + +#include "MainWindow.h" +#include "./ui_MainWindow.h" + + +MainWindow::MainWindow(QWidget *parent) + : QMainWindow(parent) + , ui(new Ui::MainWindow) +{ + ui->setupUi(this); +} + +MainWindow::~MainWindow() +{ + delete ui; +} + + diff --git a/MainWindow.h b/MainWindow.h new file mode 100644 index 0000000..1cafe77 --- /dev/null +++ b/MainWindow.h @@ -0,0 +1,26 @@ + +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include + + + +QT_BEGIN_NAMESPACE +namespace Ui { class MainWindow; } +QT_END_NAMESPACE + +class MainWindow : public QMainWindow + +{ + Q_OBJECT + +public: + MainWindow(QWidget *parent = nullptr); + ~MainWindow(); + +private: + Ui::MainWindow *ui; +}; + +#endif // MAINWINDOW_H diff --git a/MonitorUI/MonitorTagUI.h b/MonitorUI/MonitorTagUI.h new file mode 100644 index 0000000..95ff0d7 --- /dev/null +++ b/MonitorUI/MonitorTagUI.h @@ -0,0 +1,176 @@ +/******************************************************************************** +** Form generated from reading UI file 'MonitorTagPWejEQ.ui' +** +** Created by: Qt User Interface Compiler version 5.14.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef MONITORTAGPWEJEQ_H +#define MONITORTAGPWEJEQ_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_MonitorTag:public QWidget +{ +public: + QHBoxLayout *horizontalLayout; + QStackedWidget *stackedWidget; + QWidget *detailPage; + QHBoxLayout *horizontalLayout_3; + QVBoxLayout *verticalLayout; + QLabel *pictureLabel; + QLabel *nameLabel; + QGridLayout *gridLayout; + QPushButton *clearanceButton; + QPushButton *flangeButton; + QPushButton *gyroscopeButton; + QLabel *speedLabel; + QLabel *powerLabel; + QWidget *simplifyPage; + QWidget *horizontalLayoutWidget; + QHBoxLayout *horizontalLayout_2; + QLabel *pictureLabel_2; + QLabel *statusLabel; + + void setupUi(QWidget *MonitorTag) + { + if (MonitorTag->objectName().isEmpty()) + MonitorTag->setObjectName(QString::fromUtf8("MonitorTag")); + MonitorTag->resize(659, 341); + horizontalLayout = new QHBoxLayout(MonitorTag); + horizontalLayout->setSpacing(0); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + stackedWidget = new QStackedWidget(MonitorTag); + stackedWidget->setObjectName(QString::fromUtf8("stackedWidget")); + detailPage = new QWidget(); + detailPage->setObjectName(QString::fromUtf8("detailPage")); + horizontalLayout_3 = new QHBoxLayout(detailPage); + horizontalLayout_3->setSpacing(0); + horizontalLayout_3->setObjectName(QString::fromUtf8("horizontalLayout_3")); + horizontalLayout_3->setContentsMargins(0, 0, 0, 0); + verticalLayout = new QVBoxLayout(); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + pictureLabel = new QLabel(detailPage); + pictureLabel->setObjectName(QString::fromUtf8("pictureLabel")); + pictureLabel->setAlignment(Qt::AlignCenter); + + verticalLayout->addWidget(pictureLabel); + + nameLabel = new QLabel(detailPage); + nameLabel->setObjectName(QString::fromUtf8("nameLabel")); + nameLabel->setAlignment(Qt::AlignCenter); + + verticalLayout->addWidget(nameLabel); + + verticalLayout->setStretch(0, 8); + verticalLayout->setStretch(1, 2); + + horizontalLayout_3->addLayout(verticalLayout); + + gridLayout = new QGridLayout(); + gridLayout->setSpacing(0); + gridLayout->setObjectName(QString::fromUtf8("gridLayout")); + clearanceButton = new QPushButton(detailPage); + clearanceButton->setObjectName(QString::fromUtf8("clearanceButton")); + + gridLayout->addWidget(clearanceButton, 0, 1, 1, 1); + + flangeButton = new QPushButton(detailPage); + flangeButton->setObjectName(QString::fromUtf8("flangeButton")); + + gridLayout->addWidget(flangeButton, 0, 0, 1, 1); + + gyroscopeButton = new QPushButton(detailPage); + gyroscopeButton->setObjectName(QString::fromUtf8("gyroscopeButton")); + + gridLayout->addWidget(gyroscopeButton, 0, 2, 1, 1); + + speedLabel = new QLabel(detailPage); + speedLabel->setObjectName(QString::fromUtf8("speedLabel")); + + gridLayout->addWidget(speedLabel, 2, 0, 1, 3); + + powerLabel = new QLabel(detailPage); + powerLabel->setObjectName(QString::fromUtf8("powerLabel")); + + gridLayout->addWidget(powerLabel, 1, 0, 1, 3); + + + horizontalLayout_3->addLayout(gridLayout); + + stackedWidget->addWidget(detailPage); + simplifyPage = new QWidget(); + simplifyPage->setObjectName(QString::fromUtf8("simplifyPage")); + horizontalLayoutWidget = new QWidget(simplifyPage); + horizontalLayoutWidget->setObjectName(QString::fromUtf8("horizontalLayoutWidget")); + horizontalLayoutWidget->setGeometry(QRect(110, 50, 471, 241)); + horizontalLayout_2 = new QHBoxLayout(horizontalLayoutWidget); + horizontalLayout_2->setObjectName(QString::fromUtf8("horizontalLayout_2")); + horizontalLayout_2->setContentsMargins(0, 0, 0, 0); + pictureLabel_2 = new QLabel(horizontalLayoutWidget); + pictureLabel_2->setObjectName(QString::fromUtf8("pictureLabel_2")); + pictureLabel_2->setAlignment(Qt::AlignCenter); + + horizontalLayout_2->addWidget(pictureLabel_2); + + statusLabel = new QLabel(horizontalLayoutWidget); + statusLabel->setObjectName(QString::fromUtf8("statusLabel")); + statusLabel->setAlignment(Qt::AlignCenter); + + horizontalLayout_2->addWidget(statusLabel); + + stackedWidget->addWidget(simplifyPage); + + horizontalLayout->addWidget(stackedWidget); + + + retranslateUi(MonitorTag); + + stackedWidget->setCurrentIndex(0); + + + QMetaObject::connectSlotsByName(MonitorTag); + } // setupUi + + void retranslateUi(QWidget *MonitorTag) + { + MonitorTag->setWindowTitle(QCoreApplication::translate("MonitorTag", "Form", nullptr)); + pictureLabel->setText(QCoreApplication::translate("MonitorTag", "\350\256\276\345\244\207\345\233\276", nullptr)); + nameLabel->setText(QCoreApplication::translate("MonitorTag", "\350\256\276\345\244\207\345\220\215\347\247\260", nullptr)); + clearanceButton->setText(QCoreApplication::translate("MonitorTag", "\345\212\237\350\203\2752", nullptr)); + flangeButton->setText(QCoreApplication::translate("MonitorTag", "\345\212\237\350\203\2751", nullptr)); + gyroscopeButton->setText(QCoreApplication::translate("MonitorTag", "\345\212\237\350\203\2753", nullptr)); + speedLabel->setText(QCoreApplication::translate("MonitorTag", "\346\225\260\345\200\274B\357\274\232", nullptr)); + powerLabel->setText(QCoreApplication::translate("MonitorTag", "\346\225\260\345\200\274A\357\274\232", nullptr)); + pictureLabel_2->setText(QCoreApplication::translate("MonitorTag", "\350\256\276\345\244\207\345\233\276\347\211\207", nullptr)); + statusLabel->setText(QCoreApplication::translate("MonitorTag", "\350\256\276\345\244\207\347\212\266\346\200\201", nullptr)); + } // retranslateUi + + Ui_MonitorTag() + { + setupUi(this); + } + + +}; + +namespace Ui { + class MonitorTag: public Ui_MonitorTag {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // MONITORTAGPWEJEQ_H diff --git a/MonitorUI/MonitorUI.h b/MonitorUI/MonitorUI.h new file mode 100644 index 0000000..1218bcc --- /dev/null +++ b/MonitorUI/MonitorUI.h @@ -0,0 +1,173 @@ + +#ifndef MONITOROVOZEZ_H +#define MONITOROVOZEZ_H + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "MonitorTagUI.h" + +QT_BEGIN_NAMESPACE + +class Ui_MonitorWidget:public QWidget +{ +public: + QVBoxLayout *verticalLayout; + QHBoxLayout *operationLayout; + QPushButton *exchangeButton; + QSpacerItem *horizontalSpacer; + QGridLayout *monitorLayout; + QHBoxLayout *filterlLayout; + QPushButton *interruptedButton; + QPushButton *normalButton; + QPushButton *standbyButton; + QPushButton *hutdownButton; + QPushButton *failureButton; + QPushButton *runButton; + QWidget *fillWidget; + + QList> tagList; + + void setupUi(QWidget *MonitorWidget) + { + if (MonitorWidget->objectName().isEmpty()) + MonitorWidget->setObjectName(QString::fromUtf8("MonitorWidget")); + verticalLayout = new QVBoxLayout(MonitorWidget); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + verticalLayout->setContentsMargins(0, 0, 0, 0); + operationLayout = new QHBoxLayout(); + operationLayout->setObjectName(QString::fromUtf8("operationLayout")); + exchangeButton = new QPushButton(MonitorWidget); + exchangeButton->setObjectName(QString::fromUtf8("exchangeButton")); + + operationLayout->addWidget(exchangeButton); + + horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + operationLayout->addItem(horizontalSpacer); + + + verticalLayout->addLayout(operationLayout); + + monitorLayout = new QGridLayout(); + monitorLayout->setObjectName(QString::fromUtf8("monitorLayout")); + fillWidget = new QWidget(); + monitorLayout->addWidget(fillWidget); + + verticalLayout->addLayout(monitorLayout); + + filterlLayout = new QHBoxLayout(); + filterlLayout->setObjectName(QString::fromUtf8("filterlLayout")); + interruptedButton = new QPushButton(MonitorWidget); + interruptedButton->setObjectName(QString::fromUtf8("interruptedButton")); + + filterlLayout->addWidget(interruptedButton); + + normalButton = new QPushButton(MonitorWidget); + normalButton->setObjectName(QString::fromUtf8("normalButton")); + + filterlLayout->addWidget(normalButton); + + standbyButton = new QPushButton(MonitorWidget); + standbyButton->setObjectName(QString::fromUtf8("standbyButton")); + + filterlLayout->addWidget(standbyButton); + + hutdownButton = new QPushButton(MonitorWidget); + hutdownButton->setObjectName(QString::fromUtf8("hutdownButton")); + + filterlLayout->addWidget(hutdownButton); + + failureButton = new QPushButton(MonitorWidget); + failureButton->setObjectName(QString::fromUtf8("failureButton")); + + filterlLayout->addWidget(failureButton); + + runButton = new QPushButton(MonitorWidget); + runButton->setObjectName(QString::fromUtf8("runButton")); + + filterlLayout->addWidget(runButton); + + + verticalLayout->addLayout(filterlLayout); + + verticalLayout->setStretch(0, 2); + verticalLayout->setStretch(1, 30); + verticalLayout->setStretch(2, 3); + + MonitorWidget->setLayout(verticalLayout); + + + tagList.clear(); + for(int i=0;i<4;i++) + { + QList tags; + for(int j=0;j<4;j++) + { + Ui::MonitorTag *newTag = new Ui::MonitorTag(); + connect(exchangeButton, &QPushButton::clicked, this, [=](){newTag->stackedWidget->setCurrentIndex(1); }); + tags.append(newTag); + } + tagList.append(tags); + } + + for(int i=0;i<4;i++) + { + for(int j=0;j<4;j++) + { + //将Tag放入布局 + monitorLayout->addWidget(tagList.at(i).at(j), i, j); + } + } + + + + + retranslateUi(MonitorWidget); + +// this->setStyleSheet("background-color: blue;"); + + QMetaObject::connectSlotsByName(MonitorWidget); + } // setupUi + + void retranslateUi(QWidget *MonitorWidget) + { + MonitorWidget->setWindowTitle(QCoreApplication::translate("MonitorWidget", "Form", nullptr)); + exchangeButton->setText(QCoreApplication::translate("MonitorWidget", "\345\244\247\345\260\217\345\233\276\346\240\207\345\210\207\346\215\242", nullptr)); + interruptedButton->setText(QCoreApplication::translate("MonitorWidget", "\351\200\232\350\256\257\344\270\255\346\226\255 x\345\217\260", nullptr)); + normalButton->setText(QCoreApplication::translate("MonitorWidget", "\346\255\243\345\270\270\350\277\220\350\241\214 x\345\217\260", nullptr)); + standbyButton->setText(QCoreApplication::translate("MonitorWidget", "\345\276\205\346\234\272\347\255\211\351\243\216 x\345\217\260", nullptr)); + hutdownButton->setText(QCoreApplication::translate("MonitorWidget", "\345\201\234\346\234\272\347\273\264\346\212\244 x\345\217\260", nullptr)); + failureButton->setText(QCoreApplication::translate("MonitorWidget", "\346\225\205\351\232\234\345\276\205\346\234\272 x\345\217\260", nullptr)); + runButton->setText(QCoreApplication::translate("MonitorWidget", "\345\220\257\345\212\250 x\345\217\260", nullptr)); + } // retranslateUi + + Ui_MonitorWidget() + { + setupUi(this); + } + + +}; + + + + +namespace Ui { +class MonitorWidget: public Ui_MonitorWidget {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // MONITOROVOZEZ_H + + + + diff --git a/Static/close.png b/Static/close.png new file mode 100644 index 0000000000000000000000000000000000000000..eb176a042c90e64bce14ac6ef2ea99e07083cf83 GIT binary patch literal 2248 zcmZ{ldr%Zt7RGxXW~M<#7|d$4b*7WqM_4T=@ z>(=R$K1w$ugH;9yf*2{}uDhT%FK**c;PYd1Odk|>_%^R?2vVMFI3KhGG9z}En+&wYruQ+|fcm({A87>l27M-@#?4|I$s zzxPX=?~SdzzIxDlEYC4@t9D<&@xQJOsLOxiyx=)r@TmJ3p zpZX!l_u)Wl$<$P5>>HL)>sF#HGOnKPPaN$&6dymI<~W_Ab7xhJUz3!*seKyph*L8Y zHj&JDJtM*vPhfQ^BKhoVBY38gOV9iF`l{SltoJnK;f!+*2_(kaf6r_;e zQoz=B6djXrbqQT|*&YlUWpHCS#rg>DgSg!h_TRTIvMS{kZ6357HOH7LdLUupd}pKuGxT^g;qp zy93hAxM(AeEmz2e0)2sjjQP-n_ai}wA)qp5hY9ZjL6mLMtCjM=H9AJ7F`v9Z)uUXr z*AgpZ;Dw<&hN&^%-wYG8@WL=1!_b(2*bJl7Xdhd>8Uf%mm%}CqS4+$X!EwG`%|y{n zC}+1+?t7Y&W&i*|B9&_(qyrGiDPR9V|L^;Ya&ZisAFzFFMyq(WrS!?Nao1^u}VROQ+Z7-?r zLGL%dUCt}mD7!H-4_Jq^bm=CM9_jLyPr!x|GM~mYnG{l5GDUMa_2>KzPg00y>H9@! zIlKt#O5Z_{h81PFlE{gZYx#PFyWU?8SOww@vdLB_9mD79O5B8}4!&gqa~d!0BHVkt z2+hSUi{6!?0D5&gF|r4pGBslc)}+@%9GooOXzFZ$`jpkisw$u!W_z zI-Ed)&VB~(b#rkJ#YO9bUoOq0k(T1@MK~A?hT4nXZOyrq`X|165Yl_6rjY8J`{hW^ zavSW6PAdW_cU{)>V9EfM9w^EP8JW#s2l^FdhJ-rHnBwa_y7C*&I774NwcfY;I*mk> z+@eZf1;~*n9f{nzM1#f{>1bkcTrU`e>D2b1YxRe5@qH@}cpT zNlwP74Iv!^=J4~gt+S~{GeUYyXL6B7^jtSTz;0HO4=joLXW;UB8M8%6zJxFgF5AeM z5nf~ugdUK-V9FoN0qH|rv`j|&!ZvjcdjNYCfq5$A1q@w79$^2Oz}7)v>b5Cm%q4uD znF-%oO&Oo3rBdBC1zD6&8Tiyj^Z!fk~Ikc4;JK@dLlU&F<;*S_qt|ae$+N3bJw!#ErW9Nx~MLGy07xOAnXCkY^8UM3LtlCqC0RN|7dwA^|FrhaTy1V_EIMfYIk9Xry>`o7 zgkziXk}|h$VXHPAj_+FKAN<{Z4}Iu#UKw4Ga{R>JLojF&x7|1HU{GABV@OOW6vS3+ zYilF6v)Qm=_Xc~%jT;^9#9xR>N3mEjx8&;o7$Tz&s=^Zfzkw{SSq=@Jixp!367Cor z6dP)DG)9GlsUkuhMIzCm=*Un}(7{Mmlt>j49c2?19Tg{vi==*|fWt9C@u7AR_R*3^ gktF_c&H|6fVj%4S#%?FG?HCxC_ISEDhE&{od&kf#+fjt=!OW1RR*e{K zam9#TOl$8n&duJiF|>p`>$R4S$dOB@;#>p_r!MI5J*Rzc_xg&h<%>>!H*KH%%qQqf z{quV&OMwOtB52GaB9ZF=`6Wx}1iTW8(TaWJwl zGuyO#=gD0gE@asq$dT^fyl#E^1RHyP+rlev_PTZo9Y21PgRkNJ)zV0Qz9?UrKP;2f z`=?HQ^Q%Q>E4N<5P9wSJoGCxjPae*H61eEdty}jCo0t;+W{;&)TwZ|K6=L znGN3W+qbE%j?Xsp1H;P2R;v~tKmJBeu5BK>!TojXKZ}L^-+KR{NnJ->#f==f12LT^ zs!Fb8C2eLnIr+rRNVbzNGgt3q*u0j%@9$rm%9vQ7yZqDX~1 znC}Q!>*kaci(xwpRqGApm4Uaap=mQettcZfQ{_Lt17|s+GRJenx(7 zs(xZhZf2f-W^#U>Zd!g`iGE3L0hkw`Rg_qsYMf)1Z<4ETR8^W;k(rpEQJSc0s0TEx SH{@O@$V;BCelF{r5}E*Q&N`?7 literal 0 HcmV?d00001 diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..4856ad7 --- /dev/null +++ b/main.cpp @@ -0,0 +1,13 @@ + +#include "MainWindow.h" + +#include + + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + MainWindow w; + w.show(); + return a.exec(); +} diff --git a/ui_MainWindow.h b/ui_MainWindow.h new file mode 100644 index 0000000..62f8f86 --- /dev/null +++ b/ui_MainWindow.h @@ -0,0 +1,171 @@ +/******************************************************************************** +** Form generated from reading UI file 'MainWindowwurXHg.ui' +** +** Created by: Qt User Interface Compiler version 5.14.2 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef MAINWINDOWWURXHG_H +#define MAINWINDOWWURXHG_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "./MonitorUI/MonitorUI.h" +#include "./AnalyticUI/ClearanceAnalyticUI.h" +#include "./AnalyticUI/FlangeAnalyticUI.h" +#include "./AnalyticUI/GyroscopeAnalyticUI.h" + +QT_BEGIN_NAMESPACE + +class Ui_MainWindow:public QMainWindow +{ +public: + QWidget *centralwidget; + QVBoxLayout *verticalLayout; + QWidget *titleWidget; + QHBoxLayout *horizontalLayout; + QSpacerItem *horizontalSpacer; + QPushButton *minButton; + QPushButton *maxButton; + QHBoxLayout *tabLayout; + QPushButton *monitorButton; + QPushButton *flangeButton; + QPushButton *clearanceButton; + QPushButton *gyroscopeButton; + QStackedWidget *stackedWidget; + Ui::MonitorWidget *monitorPage; + Ui::ClearanceAnalyticWidget *clearancePage; + Ui::FlangeAnalyticWidget *flangePage; + Ui::GyroscopeAnalyticWidget *gyroscopePage; + + void setupUi(QMainWindow *MainWindow) + { + if (MainWindow->objectName().isEmpty()) + MainWindow->setObjectName(QString::fromUtf8("MainWindow")); + MainWindow->resize(1920, 1080); + + centralwidget = new QWidget(MainWindow); + centralwidget->setObjectName(QString::fromUtf8("centralwidget")); + verticalLayout = new QVBoxLayout(centralwidget); + verticalLayout->setSpacing(0); + verticalLayout->setObjectName(QString::fromUtf8("verticalLayout")); + verticalLayout->setContentsMargins(0, 0, 0, 0); + titleWidget = new QWidget(centralwidget); + titleWidget->setObjectName(QString::fromUtf8("titleWidget")); + horizontalLayout = new QHBoxLayout(titleWidget); + horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout")); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + horizontalLayout->addItem(horizontalSpacer); + + minButton = new QPushButton(titleWidget); + minButton->setObjectName(QString::fromUtf8("minButton")); + QIcon icon; + icon.addFile(QString::fromUtf8(":/Static/min.png"), QSize(), QIcon::Normal, QIcon::On); + minButton->setIcon(icon); + + horizontalLayout->addWidget(minButton); + + maxButton = new QPushButton(titleWidget); + maxButton->setObjectName(QString::fromUtf8("maxButton")); + QIcon icon1; + icon1.addFile(QString::fromUtf8(":/Static/close.png"), QSize(), QIcon::Normal, QIcon::On); + maxButton->setIcon(icon1); + + horizontalLayout->addWidget(maxButton); + + + verticalLayout->addWidget(titleWidget); + + tabLayout = new QHBoxLayout(); + tabLayout->setObjectName(QString::fromUtf8("tabLayout")); + monitorButton = new QPushButton(centralwidget); + monitorButton->setObjectName(QString::fromUtf8("monitorButton")); + + + + tabLayout->addWidget(monitorButton); + + flangeButton = new QPushButton(centralwidget); + flangeButton->setObjectName(QString::fromUtf8("flangeButton")); + + tabLayout->addWidget(flangeButton); + + clearanceButton = new QPushButton(centralwidget); + clearanceButton->setObjectName(QString::fromUtf8("clearanceButton")); + + tabLayout->addWidget(clearanceButton); + + gyroscopeButton = new QPushButton(centralwidget); + gyroscopeButton->setObjectName(QString::fromUtf8("gyroscopeButton")); + + tabLayout->addWidget(gyroscopeButton); + + + verticalLayout->addLayout(tabLayout); + + stackedWidget = new QStackedWidget(centralwidget); + stackedWidget->setObjectName(QString::fromUtf8("stackedWidget")); + + monitorPage = new Ui::MonitorWidget(); + monitorPage->setObjectName(QString::fromUtf8("monitorPage")); + stackedWidget->addWidget(monitorPage); + + flangePage = new Ui::FlangeAnalyticWidget(); + flangePage->setObjectName(QString::fromUtf8("flangePage")); + stackedWidget->addWidget(flangePage); + clearancePage = new Ui::ClearanceAnalyticWidget(); + clearancePage->setObjectName(QString::fromUtf8("clearancePage")); + stackedWidget->addWidget(clearancePage); + gyroscopePage = new Ui::GyroscopeAnalyticWidget(); + gyroscopePage->setObjectName(QString::fromUtf8("gyroscopePage")); + stackedWidget->addWidget(gyroscopePage); + + verticalLayout->addWidget(stackedWidget); + + verticalLayout->setStretch(0, 2); + verticalLayout->setStretch(1, 3); + verticalLayout->setStretch(2, 40); + MainWindow->setCentralWidget(centralwidget); + + retranslateUi(MainWindow); + + connect(monitorButton, &QPushButton::clicked, this, [=](){this->stackedWidget->setCurrentIndex(0); }); + connect(flangeButton, &QPushButton::clicked, this, [=](){this->stackedWidget->setCurrentIndex(1); }); + connect(clearanceButton, &QPushButton::clicked, this, [=](){this->stackedWidget->setCurrentIndex(2); }); + connect(gyroscopeButton, &QPushButton::clicked, this, [=](){this->stackedWidget->setCurrentIndex(3); }); + + QMetaObject::connectSlotsByName(MainWindow); + } // setupUi + + void retranslateUi(QMainWindow *MainWindow) + { + MainWindow->setWindowTitle(QCoreApplication::translate("MainWindow", "MainWindow", nullptr)); + minButton->setText(QString()); + maxButton->setText(QString()); + monitorButton->setText(QCoreApplication::translate("MainWindow", "\347\233\221\346\216\247\346\200\273\350\247\210", nullptr)); + flangeButton->setText(QCoreApplication::translate("MainWindow", "\346\263\225\345\205\260\345\210\206\346\236\220", nullptr)); + clearanceButton->setText(QCoreApplication::translate("MainWindow", "\345\207\200\347\251\272\345\210\206\346\236\220", nullptr)); + gyroscopeButton->setText(QCoreApplication::translate("MainWindow", "\351\231\200\350\236\272\344\273\252\347\233\221\346\265\213", nullptr)); + } // retranslateUi + +}; + +namespace Ui { + class MainWindow: public Ui_MainWindow {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // MAINWINDOWWURXHG_H