我的应用程序中有一个使用CreateStandardAlert / RunStandardAlert创建的对话框。目前我的“确定”按钮响应Return键,但Escape不执行任何操作。阅读文档,它说模态对话框应该响应Escape,但这不是。我是否需要在对RunStandardAlert的调用中指定filterProc(目前我已将其设置为0),或者我的代码中的其他地方最有可能出现问题?
答案 0 :(得分:1)
我假设您的对话框没有“取消”按钮,这通常是对Escape的响应。我不确定是否预期OK按钮应该响应Escape。如果您能找到按钮的项目编号,则可以使用SetDialogCancelItem
。
答案 1 :(得分:0)
事实证明我没有将我的一个按钮设置为取消按钮。基本上我需要输入以下代码来设置它:
alertParams.cancelText = (CFStringRef) kAlertDefaultCancelText;
alertParams.cancelButton = kAlertStdAlertCancelButton;
(这是在使用GetStandardAlertDefaultParams填充alertParams之后)