0

我有一个 NSIS 安装程序,它显示了我们产品的图片、文本区域中的免责声明、拒绝按钮和接受按钮。

我想通过简单地单击键盘上的 ENTER 键来阻止用户接受报价。

实际上,我已经放置了一个默认不执行任何操作的隐藏按钮,因此如果按下 ENTER,它不会触发安装。

来自资源黑客的隐藏按钮的代码是:

控制 "", 3, 按钮, BS_DEFPUSHBUTTON | WS_儿童 | WS_VISIBLE, 179, 272, 0, 0

显示对话框窗口后,ENTER 键不会触发接受按钮,因为隐藏按钮是默认按钮,没关系。

问题是如果用户单击免责声明的文本区域并按 ENTER,则会触发安装。(我注意到焦点没有转到接受按钮)

来自资源黑客的文本区域的代码是:

控制 "", 1000, "RichEdit20A", ES_LEFT | ES_MULTILINE | ES_READONLY | WS_儿童 | WS_VISIBLE | WS_BORDER | WS_VSCROLL, 1, 134, 439, 79

关于如何防止键盘的 ENTER 键触发接受按钮的任何想法?

提前致谢。

4

1 回答 1

0

您可以尝试通过发送DM_SETDEFID来指定对话框中的默认按钮。

于 2013-06-12T22:05:23.647 回答