2016-03-30 9 views
0

Ich füge eine benutzerdefinierte Seite zu einem NSIS-Installer und ich habe Probleme beim Hinzufügen eines Kontrollkästchens. Alle Beispiele, die ich gesehen habe, sehen gleich aus, was ich mache, aber ich kann nicht sehen, was falsch ist. (Ich habe NSIS nur für eine Stunde oder so verwendet!).NSIS Installer nsDialog Checkbox nicht angezeigt, wie ich denke, es sollte

!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 $0 "$(^Font)" "14" "500" 
    SendMessage $Heading ${WM_SETFONT} $0 1 

    ${NSD_CreateLabel} 0 50 100% 20 "Would you like to install as a service?" 
    Pop $ServiceQuestion 
    CreateFont $0 "$(^Font)" 11 
    SendMessage $ServiceQuestion ${WM_SETFONT} $0 1 

    ${NSD_CreateCheckbox} 50 50 100% 15 "Checkbox Test" 
    Pop $SvcCheckBox 
    ;GetFunctionAddress $0 OnCheckbox 
    nsDialogs::OnClick $SvcCheckBox $0 

    nsDialogs::Show 

FunctionEnd 

Wenn die Seite das Kontrollkästchen erscheint, ist es nicht:

nsis nsdialog check box problem

Antwort

0

Mein Problem ziemlich dumm war. Das Label befand sich einfach über dem Kontrollkästchen und machte es unsichtbar. Mein Fehler.