Abschnitt im NSIS -Installationsprogramm ausblenden bedingt bei der Auswahl der Radiobuttons

StackOverflow https://stackoverflow.com/questions/5842127

  •  27-10-2019
  •  | 
  •  

Frage

Wie kann ein Abschnitt bedingt beim Überprüfen oder Deaktivieren von Radiobuttons im Dialogfeld "Installer -Komponenten des Mui nsis Installer -Komponenten deaktivieren" versteckt werden.

Ich habe 2 Radiobuttons, Demo & Backup hinzugefügt.

Wenn der Benutzer ausgewählt wird, wird Demo Radiobutton und der angezeigte Abschnitt "Daten installieren oder nicht" vom Benutzer überprüft oder deaktiviert werden, und "Sicherungsdaten" oder nicht "wird versteckt.

Wenn der Benutzer ausgewählt wird, Backup Radiobutton, wird der Abschnitt "Sicherungsdaten oder nicht" angezeigt. Dies kann vom Benutzer überprüft oder deaktiviert werden, und "Daten installieren oder nicht" wird versteckt.

Wenn ich das - Zeichen verwende, ist der Abschnitt "Daten installieren oder nicht" für beide Radiobutton -Auswahlmöglichkeiten versteckt, dh auch für Demo auch und für Update auch helfen.

Außerdem gibt es Funktionen der Auswahlabteilung oder der Unauswahl, aber sie verbergen den Abschnitt, was ich möchte, nicht, dass der Abschnitt versteckt und deaktiviert sein sollte.

War es hilfreich?

Lösung

Ein versteckter Abschnitt hat keinen Namen, sodass Sie ihm einen Namen geben müssen, damit er wieder sichtbar wird:

!include Logiclib.nsh
!include Sections.nsh

page Components InitComponentsPage

!define INSTALLSECTIONNAME "Install"
section "" SEC_INSTALL
sectionend

!define BACKUPSECTIONNAME "Backup"
section "" SEC_BACKUP
sectionend

Function InitComponentsPage
${If} $InstallType == BACKUP
    SectionSetText ${SEC_BACKUP} "${BACKUPSECTIONNAME}"
    !insertmacro UnSelectSection ${SEC_INSTALL}
    SectionSetText ${SEC_INSTALL} ""
${Else}
    SectionSetText ${SEC_INSTALL} "${INSTALLSECTIONNAME}"
    !insertmacro UnSelectSection ${SEC_BACKUP}
    SectionSetText ${SEC_BACKUP} ""
${EndIf}
Functionend
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top