Objective c Cocoa/Mac OS:获取窗口工具栏的颜色

Objective c Cocoa/Mac OS:获取窗口工具栏的颜色,objective-c,macos,qt,window,Objective C,Macos,Qt,Window,我正在制作一个Qt应用程序,其中我需要一个与Mac操作系统中的工具栏颜色完全相同的选项卡小部件 我不喜欢只使用颜色选择器来采样颜色,因为它可能会根据操作系统的版本发生轻微的变化。因为我很确定这不能在Qt中完成,我想知道是否有人知道如何在本机上实现这一点?我相信[NSColor windowFrameColor]或其中一个将获得工具栏的颜色。如果需要,可以从NSColor获取RGB值。我不熟悉Qt,但您将其标记为obj-c,因此我认为这对您有所帮助 编辑渐变: 这是一位苹果工程师告诉我们NSCol

我正在制作一个Qt应用程序,其中我需要一个与Mac操作系统中的工具栏颜色完全相同的选项卡小部件


我不喜欢只使用颜色选择器来采样颜色,因为它可能会根据操作系统的版本发生轻微的变化。因为我很确定这不能在Qt中完成,我想知道是否有人知道如何在本机上实现这一点?

我相信
[NSColor windowFrameColor]
或其中一个将获得工具栏的颜色。如果需要,可以从NSColor获取RGB值。我不熟悉Qt,但您将其标记为obj-c,因此我认为这对您有所帮助

编辑渐变: 这是一位苹果工程师告诉我们NSColor是如何产生渐变的

这是因为selectedMenuItemColor是一种恰好绘制渐变的图案。你可以很容易地画出几乎任何有图案的东西,而Quartz将图案视为颜色


被接受为答案-虽然我在意识到帧颜色实际上是渐变后放弃了实现它。@Zumteufel我更新了答案,解释了NSColor如何实现渐变。这可能对你有帮助,也可能没有帮助。
[[NSColor selectedMenuItemColor] set];
NSRectFill(someRect);