gpt4 book ai didi

c++ - Qt中子窗口的自定义用户界面

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:53:33 26 4
gpt4 key购买 nike

我一直在使用 C++ 对 Qt 5 进行一些测试,我看到了很多潜力!但是我遇到了一堵我还没能通过的大墙。

我想制作一个包含其他窗口 (MDI) 的窗口,我按照一些在线教程进行操作,但是该窗口是由代码创建的,我不知道如何将它“链接”到一个 UI 文件我已经设计了。

我遵循 Qt Creator 附带的 MDI 教程,它工作正常,但正如我之前所说,它不适用于自定义 UI。我发现了这个 other one这正是我想要的,我按照它进行操作但它不起作用我还从示例中下载了源代码,运行它但仍然不起作用。它会打开一个没有任何内容的窗口。

如果有人有示例、好的教程或包含正确信息的书籍,我将不胜感激。

非常感谢您花时间阅读本文。

最佳答案

您应该在窗口上放置一个QMdiArea 小部件。它提供了一个显示 MDI 窗口的区域。可以通过设计器来完成。

所有的子窗口都应该继承 QMdiSubWindow ,它为 QMdiArea 提供了一个子窗口类:

class MyWindow : public QMdiSubWindow
{
Q_OBJECT

public:
explicit MyWindow(QWidget *parent = 0);
~MyWindow();
};

创建自定义子窗口后,您可以将其添加到 MDI 区域,如:

MyWindow * subWindow = new MyWindow(ui->mdiArea);
MyWindow->show();

您还可以通过右键单击 MDI 区域并选择在设计器中添加子窗口:

“添加子窗口”

这将添加一个在设计器中可见的子窗口。您还可以通过这种方式将任意小部件添加到设计器中添加的子窗口。

关于c++ - Qt中子窗口的自定义用户界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23917335/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com