var startmenu
!insertmacro MUI_PAGE_STARTMENU DefaultPage $startmenu
在上面的一行代码中可以用来创建startmenu文件夹页面。如果用户单击此页面的后退按钮,则想要移动控件某些特定页面。
我已经尝试了${NSD_Back}, OnClick
函数,但我不知道在哪里实现这个代码来检查按下按钮?
如何检查startmenu文件夹页面中按下的后退按钮?
答案 0 :(得分:0)
开始菜单页面由第三方插件创建,而不是由NSIS代码创建。
因此,您需要修改“开始”菜单插件源以获取有关的通知。
也许如果你说你想要实现什么,我们可以帮助你吗?
您可以使用许多其他功能 - 例如页面回调以检查上一页/下一页的状态。
答案 1 :(得分:0)
你要求的东西没有任何意义,但是你去了:
!include MUI2.nsh
Var MyStartFolder
Var BackDetection
!insertmacro MUI_PAGE_WELCOME
!define MUI_PAGE_CUSTOMFUNCTION_PRE PageCallbackBeforeSMPre
!insertmacro MUI_PAGE_COMPONENTS
!define MUI_PAGE_CUSTOMFUNCTION_PRE PageCallbackSMPre
!insertmacro MUI_PAGE_STARTMENU DefaultPage $MyStartFolder
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE English
# nsis.sf.net/Go_to_a_NSIS_page
Function RelGotoPage
IntCmp $R9 0 0 Move Move
StrCmp $R9 "X" 0 Move
StrCpy $R9 "120"
Move:
SendMessage $HWNDPARENT 0x408 $R9 ""
FunctionEnd
Function PageCallbackBeforeSMPre
${If} $BackDetection == "SM"
StrCpy $BackDetection ""
StrCpy $R9 -1
Call RelGotoPage
${EndIf}
FunctionEnd
Function PageCallbackSMPre
StrCpy $BackDetection SM
FunctionEnd