【问题标题】:Create monochromatic tray icon for OS X using QSystemTrayIcon使用 QSystemTrayIcon 为 OS X 创建单色托盘图标
【发布时间】:2015-10-28 12:27:30
【问题描述】:

OS X asks apps 使用 19x19px 单色 PDF 作为托盘图标,以便根据用户主题调整系统默认颜色。

使用模板图像来表示额外的菜单栏。在常规系统偏好设置中,用户可以将菜单栏(和 Dock)更改为深色外观。 [...]

可以使用QSystemTrayIcon 来完成吗?

据我所知,底层 QIcon 类不支持 PDF。


目前我使用的是黑色 SVG,它以纯黑色显示,导致外观非常不自然。

默认主题:

深色主题:

【问题讨论】:

  • 如果有办法获取系统主题颜色,您可以为您的图标着色。只需将形状设为 alpha,并用所需的值填充颜色通道。

标签: macos qt qt5 system-tray


【解决方案1】:

QT 的已知issue 将在 5.6 版中修复

【讨论】:

  • 这不会增加任何价值。从我最初的问题 据我所知,底层 QIcon 类不支持 PDF。
  • 您是否尝试过在 QIcon 中使用 PDF 以外的其他内容?因为正如我注意到苹果文档的链接,PDF - 它不是苹果要求在状态菜单中显示图标。
  • 日本,但图像格式不是单色的,并且不会随系统主题而变化(参见深色主题中的黑色图标)。
  • 在 Cocoa 中使用 setTemplate: NSImage 对象的方法。也许 QIcon 有类似的属性? setTemplate 的文档:说你可以使用黑色和透明来做夜间模式 (developer.apple.com/library/mac/documentation/Cocoa/Reference/…)
  • 太好了,谢谢。你能把它放到另一个答案中吗?
【解决方案2】:

这已在 Qt 5.6 中得到修复。请记住在 QIcon 上设置isMask 属性,如下所示:myQIcon.setIsMask(true) 然后mySysTray.setIcon(myQIcon)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-27
    • 1970-01-01
    • 2011-12-31
    • 2017-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多