【发布时间】:2013-10-31 18:17:30
【问题描述】:
我正在制作一个 Qt 应用程序,我需要一个与 Mac OS 中的工具栏颜色完全相同的选项卡小部件。
我不喜欢只使用颜色选择器来采样颜色,因为它可能会根据操作系统版本略有变化。因为我很确定这不能在 Qt 本身中完成,所以我想知道是否有人知道如何在本地做到这一点?
【问题讨论】:
标签: objective-c macos qt window
我正在制作一个 Qt 应用程序,我需要一个与 Mac OS 中的工具栏颜色完全相同的选项卡小部件。
我不喜欢只使用颜色选择器来采样颜色,因为它可能会根据操作系统版本略有变化。因为我很确定这不能在 Qt 本身中完成,所以我想知道是否有人知道如何在本地做到这一点?
【问题讨论】:
标签: objective-c macos qt window
我相信[NSColor windowFrameColor] 或other class methods 之一将获得工具栏的颜色。如果需要,您可以从 NSColor 获取 RGB 值。我不熟悉 Qt,但您将其标记为 obj-c,所以我认为这对您有所帮助。
编辑渐变: 这是来自苹果工程师的an explanation NSColor 如何产生渐变。
[[NSColor selectedMenuItemColor] set]; NSRectFill(someRect);之所以有效,是因为 selectedMenuItemColor 是一种碰巧绘制渐变的模式。您几乎可以轻松地绘制任何带有图案的东西,而 Quartz 将图案视为颜色
【讨论】: