// ============================================================================ // mainwindow_showcase.h —— MainWindow 类声明 // // 主窗体的静态结构(central QTextEdit / menuBar / mainToolBar / statusBar / // dockWidget / 全部 QAction)在 mainwindow.ui 中用 Qt Designer 设计; // 本类只负责动态行为:信号槽、运行时操控、状态栏更新、关于对话框。 // // 槽命名遵循 Qt 自动连接约定 on__,由 setupUi() 触发的 // QMetaObject::connectSlotsByName 自动连接,无需手写 connect(KISS)。 // ============================================================================ #ifndef MAINWINDOW_SHOWCASE_H #define MAINWINDOW_SHOWCASE_H #include #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow(QWidget *parent = nullptr); ~MainWindow() override; private slots: // 文件菜单 void on_actionNew_triggered(); void on_actionQuit_triggered(); // 视图菜单 —— 操控各组件 void on_actionToggleToolBar_toggled(bool checked); // 5.2 显示/隐藏工具栏 void on_actionToggleStatusBar_toggled(bool checked); // 5.3 显示/隐藏状态栏 void on_actionToggleToolBarMovable_toggled(bool checked); // 5.2 工具栏可移动 void on_actionToggleDockFloating_triggered(); // 5.4 浮动/停靠切换 void on_actionShowDock_triggered(); // 5.4 重新显示浮动窗口 void on_actionHideDock_triggered(); // 5.4 关闭浮动窗口 void on_actionToolBarAreaLeft_triggered(); // 5.2 setAllowedAreas void on_actionToolBarAreaRight_triggered(); void on_actionToolBarAreaTop_triggered(); void on_actionToolBarAreaBottom_triggered(); void on_actionToolBarAreaAll_triggered(); // 帮助菜单 void on_actionAbout_triggered(); // 状态栏:根据中心编辑区更新「行:列 字数:N」 void updateStatusBar(); private: Ui::MainWindow *ui; QLabel *statusPosLabel; // 状态栏永久标签(演示 5.3 addPermanentWidget) }; #endif // MAINWINDOW_SHOWCASE_H