【问题标题】:Custom painting QMainWindow title bar自定义画QMainWindow标题栏
【发布时间】:2009-11-21 18:55:24
【问题描述】:

有人知道如何在 QT 中自定义主窗口的标题栏吗?我想在“正常”绘图上进行一些自定义绘画。

我感兴趣的 QT 版本是 4.5 或 4.6 (beta)

【问题讨论】:

    标签: c++ qt qt4


    【解决方案1】:

    其实标题栏是“窗口管理器”添加的一部分。这可能是 Windows、OS X 或您在 X11 环境中运行的任何东西。无论哪种方式,您都需要移除杆并用您自己的杆替换它。为此,请使用 Qt::WindowFlags (http://doc.qt.digia.com/4.5/qt.html#WindowType-enum) 使标题栏消失。然而,这确实使您的应用程序对平台敏感,并且在 X11 上,对窗口管理器敏感。你只能提示你想要一个没有标题栏的窗口...

    【讨论】:

    • 我试图避免这种情况......但我认为除了按照你说的做之外别无选择。
    【解决方案2】:

    您似乎正在从 Kernel_Panic 中寻找 QSkinObject:

    http://www.qt-apps.org/content/show.php?action=content&content=67309

    我测试了几次效果都很好。

    【讨论】:

      【解决方案3】:

      尝试查看样式表...有一些关于如何在 QtAssistant 中自定义 QDockWidget 标题栏的示例...(查找“样式表”然后在树中选择“自定义 QDockWidget”)...

      如果你没有找到任何东西,也许通过重新实现 QMainwindow ?

      希望这会有所帮助...

      【讨论】:

      • 我想避免重新实现 QMainWindow。而且样式和样式表不支持主窗口标题栏。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-09-24
      • 2019-01-05
      • 2011-03-10
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多