如何在单击NSButton时更改背景

时间:2013-08-15 03:05:35

标签: macos mouseevent nsbutton

我在视图上有一个NSButton我将NSView子类化并在drawRect:中绘制一些内容,并且该视图属于NSWindow,其中

然后当我点击按钮时,我发现视图变得透明,我猜是因为按钮点击会改变按钮的背景。所以我继承了NSButton,

  - (void)mouseDown:(NSEvent *)theEvent {

[self.window.contentView setNeedsDisplay:YES];
[super mouseDown:theEvent];
[self.window.contentView setNeedsDisplay:YES];

[self.window.contentView setNeedsDisplay:YES]; [super mouseDown:theEvent]; [self.window.contentView setNeedsDisplay:YES];

现在当我使用mouseDown和mouseUp时,视图似乎是正确的,除非我点击时闪光灯是透明的,甚至更多,当我鼠标下移并移出按钮时,背景再次变得透明。
< BR />

任何人都可以告诉我应该怎么做才能使点击按钮的背景不变?
或者在哪里放置重绘代码。

谢谢!

0 个答案:

没有答案