我有一个标准的NSPanel设置为HUD风格。我想更改背景颜色,主要是因为我想要一个工具栏,并且看不到任何方法可以使标准的nstoolbar在HUD上看起来不错,也不会直接自定义工具栏的背景。
我知道创建完全自定义窗口的多种方法,并在其他情况下使用它们。在这种情况下,我想要一个窗口提供的所有好东西,但我只是不想要透明度。有趣的是,我可以改变背景颜色,但不能改变alpha。设置alpha值对窗口没有影响。
之前有人解决了这个问题吗?
答案 0 :(得分:0)
设置面板的内容视图(只需在面板中单击以选择它,而不是标题栏)将子类设置为SGPanelView
,并使用此类的drawRect方法的实现创建SGPanelView
:SGPanelView ,NSView的子类:
- drawRect:(NSRect)dirtyrect {
[[NSColor blackColor] set];
[NSBezierPath fillRect:[self bounds]];
}
应该有效。如果不起作用,请尝试将bounds
更改为frame
。