2016-03-29 9 views
0

Ich habe einen benutzerdefinierten Setup-Dialog, mit dem der Benutzer Funktionen auswählen kann.Installshield Ereignisreihenfolge

nennen wir sie:

  • Feature A
  • Eigenschaft B

Sobald der Benutzer die nächste Schaltfläche klickt, ein neuer Dialog geöffnet wird, je nachdem, was ausgewählt wurde.

Aussehen Meine Ereignisse wie folgt aus:

> New Dialog -> &FeatureA = 3 -> DialogA 
> New Dialog -> &FeatureB = 3 -> DialogB 

Offensichtlich ist dies vereinfacht, in Wirklichkeit überall gibt es OR-Klauseln.

Meine Frage ist, warum, auch nach dem Ändern der Ereignisreihenfolge, nur Dialog B immer geöffnet wird, wenn beide Funktionen ausgewählt sind?

+0

Ich bin mir nicht sicher, ob Sie in diesem Fall kontrollieren können, in welcher Reihenfolge die Bedingungen ausgewertet werden. warum nicht spezifischere Bedingungen verwenden, z.B. "FeatureA = 3 und FeatureB! = 3" – yossiz74

Antwort

1

Hinweis der zweite Absatz von ControlEvent Table:

Die Ausnahme ist zu beachten, dass jede Steuer eine höchstens ein NewDialog oder ein SpawnDialog Veranstaltung veröffentlichen. Wenn Sie in dieser Tabelle mehrere NewDialog- und SpawnDialog-Steuerelementereignisse erstellen müssen, fügen Sie in die Bedingungsfelder auch bedingte Anweisungen ein, die sicherstellen, dass höchstens ein Ereignis veröffentlicht wird. Wenn mehrere Steuerereignisse NewDialog und SpawnDialog für dasselbe Steuerelement ausgewählt sind, wird nur das Ereignis mit dem größten Wert in der Spalte Reihenfolge veröffentlicht, wenn das Steuerelement aktiviert wird.

Sie können alle NewDialog-Steuerungsereignisse für ein bestimmtes Steuerelement ausschließen, die sich gegenseitig ausschließen. Die korrekte Bestellung sollte funktionieren, aber das ist leicht zu vermasseln.

Verwandte Themen