NSIS 安装程序 nsDialog 复选框没有按我认为的那样出现
NSIS installer nsDialog checkbox not appearing as I think it should
我正在向 NSIS 安装程序添加自定义页面,但在添加复选框时遇到问题。我见过的所有例子看起来都一样,这就是我正在做的,但我看不出哪里出了问题。 (我只使用 NSIS 一个小时左右!)。
!include MUI2.nsh
!include WordFunc.nsh
!insertmacro VersionCompare
!include LogicLib.nsh
!include InstallOptions.nsh
!include nsDialogs.nsh
Name "xxxxx"
;!define MUI_ICON "bcs.ico"
;!define MUI_HEADERIMAGE
;!define MUI_HEADERIMAGE_BITMAP "bcs.bmp"
;!define MUI_WELCOMEFINISHPAGE_BITMAP "bcs164.bmp"
;!define MUI_HEADERIMAGE_RIGHT
OutFile "nqcs_setup.exe"
InstallDir "$PROGRAMFILES\xxxx"
InstallDirRegKey HKLM "Software\xxxx" "InstallDir"
RequestExecutionLevel admin
Var Dialog
Var Heading
Var ServiceQuestion
Var SvcCheckBox
Function installOptionsPage
nsDialogs::Create 1018
Pop $Dialog
${If} $Dialog == error
Abort
${EndIf}
${NSD_CreateLabel} 0 0 100% 50 "Installation Options"
Pop $Heading
CreateFont [=10=] "$(^Font)" "14" "500"
SendMessage $Heading ${WM_SETFONT} [=10=] 1
${NSD_CreateLabel} 0 50 100% 20 "Would you like to install as a service?"
Pop $ServiceQuestion
CreateFont [=10=] "$(^Font)" 11
SendMessage $ServiceQuestion ${WM_SETFONT} [=10=] 1
${NSD_CreateCheckbox} 50 50 100% 15 "Checkbox Test"
Pop $SvcCheckBox
;GetFunctionAddress [=10=] OnCheckbox
nsDialogs::OnClick $SvcCheckBox [=10=]
nsDialogs::Show
FunctionEnd
当页面出现时,复选框不存在:
我的问题很愚蠢。标签就在复选框上方,使其不可见。我的错。
我正在向 NSIS 安装程序添加自定义页面,但在添加复选框时遇到问题。我见过的所有例子看起来都一样,这就是我正在做的,但我看不出哪里出了问题。 (我只使用 NSIS 一个小时左右!)。
!include MUI2.nsh
!include WordFunc.nsh
!insertmacro VersionCompare
!include LogicLib.nsh
!include InstallOptions.nsh
!include nsDialogs.nsh
Name "xxxxx"
;!define MUI_ICON "bcs.ico"
;!define MUI_HEADERIMAGE
;!define MUI_HEADERIMAGE_BITMAP "bcs.bmp"
;!define MUI_WELCOMEFINISHPAGE_BITMAP "bcs164.bmp"
;!define MUI_HEADERIMAGE_RIGHT
OutFile "nqcs_setup.exe"
InstallDir "$PROGRAMFILES\xxxx"
InstallDirRegKey HKLM "Software\xxxx" "InstallDir"
RequestExecutionLevel admin
Var Dialog
Var Heading
Var ServiceQuestion
Var SvcCheckBox
Function installOptionsPage
nsDialogs::Create 1018
Pop $Dialog
${If} $Dialog == error
Abort
${EndIf}
${NSD_CreateLabel} 0 0 100% 50 "Installation Options"
Pop $Heading
CreateFont [=10=] "$(^Font)" "14" "500"
SendMessage $Heading ${WM_SETFONT} [=10=] 1
${NSD_CreateLabel} 0 50 100% 20 "Would you like to install as a service?"
Pop $ServiceQuestion
CreateFont [=10=] "$(^Font)" 11
SendMessage $ServiceQuestion ${WM_SETFONT} [=10=] 1
${NSD_CreateCheckbox} 50 50 100% 15 "Checkbox Test"
Pop $SvcCheckBox
;GetFunctionAddress [=10=] OnCheckbox
nsDialogs::OnClick $SvcCheckBox [=10=]
nsDialogs::Show
FunctionEnd
当页面出现时,复选框不存在:
我的问题很愚蠢。标签就在复选框上方,使其不可见。我的错。