nsis - 如何设置"下一步"按钮作为默认按钮

时间:2015-02-16 07:22:40

标签: nsis nsdialogs

我有两个自定义页面。

在第一个自定义页面中,默认按钮(在<Enter>上触发)是Next按钮。

在第二个自定义页面中,我将默认按钮设置为其他按钮:

SendMessage $HWNDPARENT ${DM_SETDEFID} 1221 0

但是当我点击Back返回第一个自定义页面时,默认按钮不再是Next(即<Enter>不再触发Next。)< / p>

如何将第一个自定义页面中的默认按钮设置回Next按钮?

我尝试了以下但是它不起作用:

GetDlgItem $1 "$HWNDPARENT" 1
SendMessage $HWNDPARENT ${DM_SETDEFID} $1 0

修改

代码和文件结构实际上很复杂,但我会尝试简化:

Dialog1.nsh

Function fnc_Dialog1_Create
    ; create dialog controls here
    Call SetupDialog1
FunctionEnd

Function SetupDialog1
    ; create event handlers here
    nsDialogs::Show
FunctionEnd

Dialog2.nsh

Function fnc_Dialog2_Create
    ; create dialog controls here
    ${NSD_CreateButton} 217.87u 126.15u 78.33u 14.15u "$(TRANSLATED_DLG_BUTTON_TESTCONNECTION)"
    Call SetupDialog2
FunctionEnd

Function SetupDialog2
    ; create event handlers here
    ; set Default Button (prevent "Install" on <Enter> by setting default button to a different button
    SendMessage $HWNDPARENT ${DM_SETDEFID} 1221 0
    nsDialogs::Show
FunctionEnd

0 个答案:

没有答案