【问题标题】:NSButton key equivalentNSButton 键等效
【发布时间】:2011-02-17 06:37:32
【问题描述】:

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

【问题讨论】:

  • 尝试按enter 键,看看它是否有效!
  • 为什么要将其设为默认按钮单元格?默认按钮单元格使用\r(回车/回车)作为其等效键。
  • 那行得通。我不知道为什么我认为我必须将其设为默认纽扣电池。谢谢!

标签: cocoa nsview nsbutton


【解决方案1】:

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

[quickEntryWindow setDefaultButtonCell:[ESCButton cell]];
[quickEntryWindow enableKeyEquivalentForDefaultButtonCell];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-07
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 1970-01-01
    • 1970-01-01
    • 2011-08-30
    相关资源
    最近更新 更多