使用 Qt 4.4 的自定义停靠区域

发布于 2024-08-02 05:56:53 字数 343 浏览 4 评论 0原文

是否可以使用 Qt 4.4 创建自定义停靠区域。我知道这在 Qt 3 中是可能的,正如这个 文档 所建议的那样。摘自文档“...如果您需要创建自己的停靠区域,我们建议您创建 QWidget 的子类并将 Q3DockAreas 添加到您的子类...”。然而,在我看来,Qt 4 中的 Q3DockArea 已被删除,现在 QMainWindow 本身具有停靠区域。我基本上想要拥有自己的停靠区域小部件,我可以将小部件停靠到其中。该停靠区域小部件可以位于应用程序中的任何位置。关于我如何做到这一点有什么想法吗?

Is it possible to create custom dock areas using Qt 4.4. I know this is possible in Qt 3 as this document suggests. Excerpt from document"...If you need to create your own dock areas we suggest that you create a subclass of QWidget and add your Q3DockAreas to your subclass...". However, it seems to me that in Qt 4 Q3DockArea has been removed and now the QMainWindow itself has the dock areas. I basically want to have my own dock area widget that I can dock widgets into. This dock area widget can be anywhere in the application. Any ideas on how I can do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

眼泪都笑了 2024-08-09 05:56:53

起初,Q3DockArea在Qt4中并没有被删除,实际上是被添加了。被删除的类是 QDockArea。
如果您有旧代码,您仍然可以使用这个 Q3* 类,这就是它们的用途。

但我不建议使用兼容性类。像 QWidget 一样使用 QMainWindow 怎么样?使用父 Widget 创建它,但没有菜单、工具栏、状态栏,并使用 setWindowFlags() 等撤销其顶级状态。

您可以将其用作旧式 QDockArea,将其放置在您喜欢的位置并添加 QDockWidgets。

另外,当前的Qt版本是4.5.2,不需要使用过时的版本;-)

At first, Q3DockArea hasn't been removed in Qt4, actually it has been added. The class which got removed was QDockArea.
You can still use this Q3* classes if you have old code, thats what they are made for.

But I would not recommend to use the compatibility classes. How about using a QMainWindow like a QWidget. Create it with a parent Widget, but without menu, toolbar, statusbar and revoke its top-level status with setWindowFlags() and the like.

You can use it as an old style QDockArea, place it where you like and add your QDockWidgets.

Besides, the current Qt Version is 4.5.2, no need to use outdated Versions ;-)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文