【问题标题】:Trap click event on dock icon using Qt on Mac在 Mac 上使用 Qt 捕获停靠图标上的单击事件
【发布时间】:2011-04-15 14:49:19
【问题描述】:

我正在尝试在 Mac OS X 上的停靠图标上获取停靠点击事件。我正在使用 Qt-Cocoa。 任何帮助将不胜感激。

谢谢, 拉胡尔

【问题讨论】:

    标签: cocoa macos qt


    【解决方案1】:

    我已经为一个开源项目完成了这项工作。请参阅此处的代码: https://github.com/KDAB/Charm/blob/master/Charm/MacApplicationCore.mm

    【讨论】:

    【解决方案2】:

    在 Qt-Carbon 中,请参阅 Qt4 Mac Dock Icon Click。它解释了如何安装重新打开事件处理程序。

    在 Qt-Cocoa 中,您应该使用 [[NSApplication sharedApplicaion] delegate] 获取应用程序委托,并使用 class_addMethod 添加您自己的 applicationShouldHandleReopen:hasVisibleWindows: 方法。我还没有真正尝试过。

    【讨论】:

    • 这不适用于 Qt-Cocoa。它只适用于 Qt-Carbon。
    • 您的链接已损坏。如果您不在此答案中添加上下文,则此答案将很快被删除。
    【解决方案3】:

    在 Qt 5.9.1 上,您还可以使用 hack,而无需任何特定于平台的代码。见https://stackoverflow.com/a/46488514/8695355

    【讨论】:

      猜你喜欢
      • 2011-05-30
      • 1970-01-01
      • 2011-06-10
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-19
      • 2012-03-19
      相关资源
      最近更新 更多