【问题标题】:How to create a Textmate like side panel in Qt如何在 Qt 中创建类似 Textmate 的侧面板
【发布时间】:2012-11-10 00:59:43
【问题描述】:

如何使用 C++/Qt 在 Textmate 中创建类似于文件资源管理器的侧面板?更准确地说,如下图的左侧面板:


(来源:garzaincredible.com

最接近我需要的似乎是QDockWidget,但我仍然不知道如何使用它。

【问题讨论】:

    标签: c++ qt user-interface qwidget


    【解决方案1】:

    这就是所谓的“抽屉”。在 Qt 中,有一个特殊的 Qt::WindowFlags 标志:Qt::Drawer。目的是在 QDockWidget 上使用这个标志:

    QDockWidget* dock = new QDockWidget(parent, Qt::Drawer);
    

    这将为停靠小部件创建一个 Cocoa 抽屉。您无需确保 Qt::Drawer 仅在 OS X 上使用;该标志在其他平台上会被忽略,因此您可以无条件指定它。

    【讨论】:

    • 非常感谢,但有没有办法让它跨平台(例如应用程序在 Linux 机器上看起来也一样)?
    • @DodonVictor 不。这是由 Cocoa 实现的,而不是 Qt。它不能在其他平台上运行。无论如何,这不是一个好主意。人们以前从未见过的陌生的 GUI 概念大多会导致混乱。此外,在决定使用此 Mac 功能之前,您可能需要阅读这篇文章:mcelhearn.com/2006/07/29/…
    猜你喜欢
    • 2011-04-23
    • 2010-10-09
    • 2011-11-29
    • 2021-10-09
    • 1970-01-01
    • 2020-01-13
    • 2016-04-05
    • 1970-01-01
    相关资源
    最近更新 更多