Qt 中组件的组成框架
QMainWindow 是 Qt 中用于实现主窗口的类,继承自 QWidget,提供了预定义的布局结构。主要包含以下组件:
- 菜单栏(Menu Bar):位于主窗口顶部。
- 工具栏(Tool Bars):存放常用选项,方便快速访问。
- 中心部件(Central Widget):窗口核心部分,由用户自定义组件构成。
- 状态栏(Status Bar):显示程序状态或提示信息。
- 浮动窗体(Dock Widgets):可停靠的子窗口。

菜单栏 QMenuBar
一个主窗口最多只能有一个菜单栏,通过 QMenuBar 类实现。菜单系统主要由 QMenu、QMenuBar 和 QAction 组成。
创建步骤
- 使用
QMainWindow而非QWidget作为基类。 - 创建
QMenuBar实例并设置到窗口。 - 创建
QMenu添加到菜单栏。 - 创建
QAction添加到菜单项。 - 连接信号槽处理点击事件。
代码实现
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow {
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
public slots:
void handle();
private:
Ui::MainWindow *ui;
};



