更改 NSView 背景颜色的最佳方法 [英] Best way to change the background color for an NSView
本文介绍了更改 NSView 背景颜色的最佳方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在寻找更改 NSView
的 backgroundColor
的最佳方法.我还希望能够为 NSView
设置适当的 alpha
掩码.类似的东西:
I'm looking for the best way to change the backgroundColor
of an NSView
. I'd also like to be able to set the appropriate alpha
mask for the NSView
. Something like:
myView.backgroundColor = [NSColor colorWithCalibratedRed:0.227f
green:0.251f
blue:0.337
alpha:0.8];
我注意到 NSWindow
有这个方法,而且我不是 NSColorWheel
或 NSImage
背景选项的忠实粉丝,但是如果他们是最好的,愿意使用.
I notice that NSWindow
has this method, and I'm not a big fan of the NSColorWheel
, or NSImage
background options, but if they are the best, willing to use.
推荐答案
是的,你自己的回答是对的.你也可以使用 Cocoa 方法:
Yeah, your own answer was right. You could also use Cocoa methods:
- (void)drawRect:(NSRect)dirtyRect {
// set any NSColor for filling, say white:
[[NSColor whiteColor] setFill];
NSRectFill(dirtyRect);
[super drawRect:dirtyRect];
}
在 Swift 中:
class MyView: NSView {
override func draw(_ dirtyRect: NSRect) {
super.draw(dirtyRect)
// #1d161d
NSColor(red: 0x1d/255, green: 0x16/255, blue: 0x1d/255, alpha: 1).setFill()
dirtyRect.fill()
}
}
这篇关于更改 NSView 背景颜色的最佳方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文