在Qt中,可以通过将子类窗口作为主窗口的子部件来嵌套到主窗口中。以下是一种实现方式:
ChildWidget
。class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
private:
ChildWidget *childWidget;
};
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
childWidget = new ChildWidget(this);
// 其他主窗口的设置和布局...
}
// 创建一个主窗口的中心部件
QWidget *centralWidget = new QWidget(this);
setCentralWidget(centralWidget);
// 创建一个垂直布局管理器
QVBoxLayout *layout = new QVBoxLayout(centralWidget);
// 将子窗口添加到布局中
layout->addWidget(childWidget);
通过上述步骤,子窗口就被成功嵌套到了主窗口中。你可以在主窗口的其他部件中访问和操作子窗口。