当用户按下Esc或Enter键时,如何在Cocoa应用程序中关闭对话框?我有OK按钮,是否可以将其设为默认按钮?
答案 0 :(得分:7)
如果您使用NSAlert
课程,NSRunAlertPanel
系列功能或NSBeginAlertSheet
系列功能提供警报面板,您将自动获得默认和取消按钮支持。
如果您正在展示需要“确定/取消”按钮的工作表,并且您没有使用上述任何一个,则应该能够使用属性检查器在Interface Builder中为您的按钮分配相应的键盘等效项。 (只需突出显示 Key Equiv。区域,然后按下您希望等同于按下该按钮的键。)
如果您要呈现的对话框不是警报或文档/窗口模式表 - 请不要。 :)文档模式警报不像Mac一样,不应该用于偏好窗口之类的东西。
答案 1 :(得分:0)
只需在IB的“等价键”属性中为所需按钮分配“ escapeKey”或“ cancelKey”,它将正常工作。同样,如果您分配了该键,则按钮将具有不同的突出显示。