C++ 使用多种颜色为macOS中的标题栏着色
我有一个运行在macOS上的Qt应用程序。我找到了一种改变标题栏颜色的方法,不过我想更进一步。我想模仿Slack和Discord应用程序使用的标题栏。例如: 如您所见,窗口中控件的颜色延伸到应用程序窗口的最顶部。我认为有两种方法可以实现我的目标:C++ 使用多种颜色为macOS中的标题栏着色,c++,qt,cocoa,titlebar,C++,Qt,Cocoa,Titlebar,我有一个运行在macOS上的Qt应用程序。我找到了一种改变标题栏颜色的方法,不过我想更进一步。我想模仿Slack和Discord应用程序使用的标题栏。例如: 如您所见,窗口中控件的颜色延伸到应用程序窗口的最顶部。我认为有两种方法可以实现我的目标: 我可以建立在上面粘贴的代码之上。翻阅一些Apple开发者文档,我想我可以在标题栏的顶部创建一对NsWindows,宽度任意,并将标题栏附加为这些窗口的父窗口。一旦我这样做了,我应该能够为每一个调用相同的backgroundColor()color。当
NsWindow
s,宽度任意,并将标题栏附加为这些窗口的父窗口。一旦我这样做了,我应该能够为每一个调用相同的backgroundColor()
color。当然,这需要我跟踪控件或窗口何时调整大小,并调整标题栏的NsWindow
s,我不确定可能导致什么(如果有)问题0
?我想知道Discord应用程序是否就是这么做的,因为:我意识到没有Qt解决方案,因为Qt没有绘制标题栏。我知道这将是OS特定的,但由于我没有任何Obje+C++或与COCOA的实际经验(我在Mac OS上的所有编程经验都是标准的C++,带有非UI或基于QT的代码),我会很感激任何建议或指导!p> 本机使用
NSWindow的属性和。一旦将它们设置为true
,就可以在标题栏下方绘制或放置控件。谢谢!我可以通过以下方式实现我想要的:NSWindowStyleMask windowMask=NSWindowStyleMaskFullSizeContentView | NSWindowStyleMask无序| NSWindowStyleMask标题| NSWindowStyleMask可关闭| NSWindowStyleMask最小化|NSC的规模相当大;[窗口设置样式掩码:窗口掩码]代码>