//获取文本颜色:
- (NSColor *)textColor
{
NSAttributedString *attrTitle = [self attributedTitle];
int len = [attrTitle length];
NSRange range = NSMakeRange(0, MIN(len, 1)); // get the font attributes from the first character
NSDictionary *attrs = [attrTitle fontAttributesInRange:range];
NSColor *textColor = [NSColor controlTextColor];
if (attrs)
{
textColor = [attrs objectForKey:NSForegroundColorAttributeName];
}
return textColor;
}
//设置文本颜色
- (void)setTextColor:(NSColor *)textColor
{
NSMutableAttributedString *attrTitle =
[[NSMutableAttributedString alloc] initWithAttributedString:[self attributedTitle]];
int len = [attrTitle length];
NSRange range = NSMakeRange(0, len);
[attrTitle addAttribute:NSForegroundColorAttributeName value:textColor range:range];
[attrTitle fixAttributesInRange:range];
[self setAttributedTitle:attrTitle];
[attrTitle release];
}
//一个button两种状态行为:
- (IBAction)pressSpaceKey:(id)sender {
NSLog(@" go to record");
// 需要给这个按钮增加一个事件,让它与keyDown/keyUp 关联,按住按钮时一直录音,松开按钮时录音结束。
NSButton * btn = (NSButton *)sender;
if ([btn tag] == 100) {
btn.tag = 101;
//添加动作代码
[btn setTitle:@"停止录音"];
}else if ([btn tag] == 101){
btn.tag = 100;
//添加另外一种状态的动作代码
[btn setTitle:@"开始录音"];
}
}
//单选框
IBOutlet NSMatrix *popoverType;