Cocoa 丢失在NSButton类型和备用映像中
我想要一个带有图像和备用图像的Cocoa 丢失在NSButton类型和备用映像中,cocoa,macos,nsbutton,Cocoa,Macos,Nsbutton,我想要一个带有图像和备用图像的NSButton。按下按钮时应显示备用图像,我还想显示代码中的备用图像,调用类似[按钮设置选择:是]。无需手动使用alternateImage属性即可实现此功能吗?最简单的方法是在两个图像之间切换: @implementation NSButton (Select) - (void) setSelected: (BOOL) yn { NSImage *const tmp = [self image]; [self setImage:[self al
NSButton
。按下按钮时应显示备用图像,我还想显示代码中的备用图像,调用类似[按钮设置选择:是]
。无需手动使用alternateImage
属性即可实现此功能吗?最简单的方法是在两个图像之间切换:
@implementation NSButton (Select)
- (void) setSelected: (BOOL) yn
{
NSImage *const tmp = [self image];
[self setImage:[self alternateImage]];
[self setAlternateImage:tmp];
}
@end
这可以在不手动更改按钮图像的情况下实现: 在界面生成器(xib/nib编辑器)中,将NSButton的类型设置为“切换”,图像将自动更改为备用图像/标题
您可以使用类型设置为
NSToggleButton
的NSButton
,然后使用NSButton
的nsstate
/NSOffState
状态在图像
和备选图像
之间切换
NSButton* theButton = [[NSButton alloc] initWithFrame:....];
theButton.image = .....
theButton.alternateImage = .....
theButton.state = NSOffState; // displays the image
theButton.state = NSOnState; // displays the alternateImage
我只是在界面编辑器的属性检查器中构建了所有10种类型的按钮,没有添加任何编码。结果如下: 按钮式 被压着的时候 释放时 瞬间推入 第一幅图像变暗了 第一图像 瞬时光 第一幅图像变暗了 第一图像 瞬间变化 ALT图像 第一图像 推上/推下 第一幅图像变暗了 第一图像 开/关 第一幅图像变暗了 第一图像 切换 ALT图像 ALT图像 转换 ALT图像 ALT图像 收音机(无效) 加速器 第一幅图像变暗了 第一图像 多级Acc。 第一幅图像变暗了 第一图像
谢谢,你可能是对的。我添加了一个简单的类别来在图像之间切换。你知道如何为悬停事件设置备用图像(当鼠标位于按钮上方时,而不是单击时)?@有用:你必须使用
跟踪区域作为按钮,如果按钮类型为NSToggleButton
,则可以使用theButton.state=NSOffState在标准图像和备用图像之间切换代码>和'theButton.state=nson状态``