我有一个带有OK和取消按钮的模态对话框.对于OK我将Default属性设置为True,而对于Cancel按钮则设置Cancel属性. ModalResult设置为mrOK和mrCancel,resp.
但是,无论是按下键盘上的Enter键还是Esc键都会关闭对话框.我在这里想念的是什么?
编辑
我在我的网站上使用可疑对话框发布了small test application. IDE是RAD Studio XE3.
解决方法
从您发布的示例中,您可以看到TSpinEdit控件是关注的并捕获密钥.
要在所有情况下关闭模式窗体,请将窗体KeyPreview设置为true并将其插入到OnKeyPress事件中:
procedure TSelectDlg.FormKeyPress(Sender: TObject; var Key: Char); begin if (Key = Char(vk_escape)) then // #27 CancelBtn.Click else if (Key = Char(vk_return)) then // #13 OkBtn.Click; end;