Non puoi selezionare più di 25 argomenti
Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
|
- #ifndef MAINWINDOW_H
- #define MAINWINDOW_H
-
- #include <QMainWindow>
- #include <QTabWidget>
- #include <QToolBar>
- #include <QAction>
- #include<QTextEdit>
- #include "basedocument.h"
- #include<QPushButton>
- QT_BEGIN_NAMESPACE
- namespace Ui { class MainWindow; }
- QT_END_NAMESPACE
-
- class MainWindow : public QMainWindow
- {
- Q_OBJECT
-
- public:
- MainWindow(QWidget *parent = nullptr);
- ~MainWindow();
-
- protected:
- bool eventFilter(QObject *obj, QEvent *event) override;
-
- private slots:
- void onNewHMI(); // 新建HMI文档
- void onNewPLC(); // 新建PLC文档
- void onTabChanged(int idx); // 标签页切换时更新工具栏
- void onSave(); // 保存文档
- void onSaveAs(); // 另存为文档
- void onOpen(); // 打开文档
- void onCloseTab(int index); // 关闭标签页
- void onClearLogButtonClicked();
- void showLogContextMenu(const QPoint &pos);
- private:
- void createMenus(); // 创建菜单栏
- QWidget* m_logPanelContainer;
- QDockWidget* m_logDock;
- QTextEdit* m_logEdit;
- QPushButton* m_clearLogBtn;
- void createLogPanel();
- void createToolbars(); // 创建工具栏(左侧)
- void updateToolBar(BaseDocument *doc); // 根据文档类型更新工具栏
- void saveDocument(BaseDocument *doc); // 保存文档
- void saveDocumentAs(BaseDocument *doc); // 另存为文档
- QTabWidget *m_tabWidget; // 多文档标签页
- QToolBar *m_leftToolBar; // 左侧工具栏
- int m_hmiCount = 0; // HMI文档计数器
- int m_plcCount = 0; // PLC文档计数器
-
- // 菜单动作
- QAction *m_saveAction;
- QAction *m_saveAsAction;
- QAction *m_openAction;
- };
-
- #endif // MAINWINDOW_H
|