我无法在我以编程方式创建的NSButton上进行关键的等效工作。谁能告诉我我做错了什么?按下时按钮按预期工作,但等效键不起作用。
NSButton *ESCButton = [[NSButton alloc] initWithFrame:NSMakeRect(0, 0, 10, 10)];
[[quickEntryWindow contentView] addSubview:ESCButton];
[[ESCButton cell] setKeyEquivalent:@"\E"];
[ESCButton setTarget:self];
//[ESCButton setTransparent:YES];
[ESCButton setAction:@selector(hideQuickEntryWindow)];
[quickEntryWindow setDefaultButtonCell:[ESCButton cell]];
[quickEntryWindow enableKeyEquivalentForDefaultButtonCell];
答案 0 :(得分:4)
-setDefaultButtonCell:
将单元格转换为窗口默认按钮单元格,该单元格必须具有等效的\r
键(返回/回车)。如果要使用其他等效键,请删除
[quickEntryWindow setDefaultButtonCell:[ESCButton cell]];
[quickEntryWindow enableKeyEquivalentForDefaultButtonCell];