2

我无法在以编程方式创建的 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];
4

1 回答 1

4

-setDefaultButtonCell:将单元格转换为窗口默认按钮单元格,该单元格必须具有等效键\r(Return/Enter)。如果要使用另一个等效键,请删除

[quickEntryWindow setDefaultButtonCell:[ESCButton cell]];
[quickEntryWindow enableKeyEquivalentForDefaultButtonCell];
于 2011-02-17T06:58:42.370 回答