Freigeben über


Hinzufügen eines in einer Eigenschaft gespeicherten Texts

Das im Abschnitt Erstellen eines bedingten „Bitte warten“-Meldungsfelds beschriebene Beispiel zeigt ein Dialogfeld mit folgendem Text an: „Bitte warten Sie, während die Berechnung des Speicherplatzes auf dem Datenträger abgeschlossen wird.“ Dazu können Sie einfach ein Textsteuerelement in das Dialogfeld einfügen und die Textzeichenfolge in die Spalte „Text“ der Tabelle Control eingeben. In diesem Fall müssen die Informationen zum Schriftschnitt in die Zeichenfolge eingebettet werden. Der/die Ersteller*in muss die Schriftart und den Schriftstil festlegen, indem der Zeichenfolge {\style} vorangestellt wird. Dabei ist style ein Bezeichner für einen Schriftschnitt, der in der Spalte „TextStyle“ der Tabelle TextStyle aufgeführt ist. Diese Methode zum Hinzufügen von Text wird unter Installationsbeispiel mehrmals veranschaulicht.

Verfasser*innen von Benutzeroberflächen können den Text auch in einer Eigenschaft speichern. Das folgende Beispiel veranschaulicht dies und zeigt, wie ControlEvents zum Anzeigen alternativer Textzeichenfolgen verwendet werden kann.

Das Ziel in diesem Beispiel besteht erneut darin, ein Dialogfeld WaitForCosting einzurichten, während eine Hintergrundaufgabe ausgeführt wird. Im neuen Szenario besteht ein Unterschied. Wenn die Benutzer*innen das Dialogfeld WaitForCosting abbrechen und dann versuchen, das Steuerelement ein zweites Mal zu aktivieren, bevor die Hintergrundaufgabe abgeschlossen ist, wird das Feld WaitForCosting erneut mit der alternativen Meldung angezeigt: „Berechnung des Speicherplatzes auf dem Datenträger wird weiterhin ausgeführt. Sie können weiter warten oder zum Standardauswahlfeld zurückkehren, um diese Sequenz zu beenden.“

So zeigen Sie ein Dialogfeld „Bitte warten“ an, in dem alternative Meldungen angezeigt werden

  1. Fügen Sie zunächst einem Auswahldialogfeld ein bedingtes Dialogfeld WaitForCosting hinzu, wie unter Erstellen eines bedingten „Bitte warten“-Meldungsfelds beschrieben.
  2. Fügen Sie in das Dialogfeld WaitForCosting ein Textsteuerelement ein, indem Sie einen Datensatz in der Tabelle Control erstellen. Geben Sie den Bezeichner des Dialogfelds WaitForCosting in der Spalte „Dialog_“ ein. Geben Sie den Bezeichner des Textsteuerelements in der Spalte „Control“ ein. Geben Sie als Typ des Steuerelements in der Spalte „Type“ die Zeichenfolge „Text“ an.
  3. Geben Sie das Attribut Position control für das Textsteuerelement an, indem Sie die horizontalen und vertikalen Koordinaten der linken oberen Ecke des Steuerelements in den Spalten „X“ und „Y“ der Tabelle Control eingeben. Verwenden Sie Pixel als Abstandseinheiten.
  4. Geben Sie die Breite und die Höhe des Textsteuerelements an, indem Sie diese Abmessungen in den Spalten „Width“ und „Height“ der Tabelle Control eingeben. Verwenden Sie Pixel als Längeneinheiten.
  5. Die Spalten „Property“ und „Control_Next“ der Tabelle „Control“ haben keine Auswirkung auf Textsteuerelemente und können in diesem Fall leer bleiben.
  6. Geben Sie die Steuerelementattribute für das Textsteuerelement an, die Bitflags zugeordnet sind. Addieren Sie die einzelnen Bitwerte, und geben Sie die Summe in der Spalte „Attributes“ der Tabelle „Control“ ein. Dies sind die Steuerelementattribute Visible, Sunken, Enabled, Transparent, NoWrap und NoPrefix. Die Kombination der Bits, die ein Textsteuerelement auf einem nicht transparenten Hintergrund mit Umbruchtext anzeigt, lautet 0. Geben Sie daher „0“ ein, oder lassen Sie die Spalte „Attributes“ leer.
  7. Die Spalte „Text“ der Tabelle „Control“ kann leer bleiben. Im Textsteuerelement wird die Textzeichenfolge im Attribut Text des Steuerelements angezeigt. Die Methode zum Festlegen dieses Attributs wird in den folgenden Schritten dieser Prozedur beschrieben.
  8. Fügen Sie einen Datensatz in der Tabelle Property hinzu, um die „FirstMessage“-Eigenschaft der Meldung zu definieren. Diese Eigenschaft ist eine Zeichenfolge, die den Schriftschnitt und den Text für die erste Nachricht enthält. Geben Sie den Namen „FirstMessage“ in der Spalte „Property“ ein. Geben Sie in der Spalte „Value“ die Zeichenfolge ein: „{\WaitStyle}Bitte warten Sie, während die Berechnung des Speicherplatzes auf dem Datenträger abgeschlossen wird.“ Dabei ist „WaitStyle“ ein Bezeichner für einen der Schriftschnitte, die in der Spalte „TextStyle“ der Tabelle TextStyle aufgeführt sind.
  9. Fügen Sie einen Datensatz in der Tabelle Property hinzu, um die „SecondMessage“-Eigenschaft der Meldung zu definieren. Diese Eigenschaft ist eine Zeichenfolge, die den Schriftschnitt und den Text für die zweite Nachricht enthält. Geben Sie den Namen „SecondMessage“ in der Spalte „Property“ ein. Geben Sie in der Spalte Wert die Zeichenfolge ein: „{\WaitStyle}Berechnung des Speicherplatzes auf dem Datenträger wird weiterhin ausgeführt. Sie können weiter warten oder zum Standardauswahlfeld zurückkehren, um diese Sequenz zu beenden.“
  10. Fügen Sie einen Datensatz in der Tabelle Property hinzu, um die „WaitMessage“-Eigenschaft der Meldung zu definieren. Diese Eigenschaft ist eine Zeichenfolge, die den Schriftschnitt und den Text für die im Dialogfeld WaitForCosting angezeigte Nachricht enthält, wenn die Benutzer*innen versuchen, eine Schaltfläche zu aktivieren, bevor die Berechnung des Speicherplatzes abgeschlossen ist. Geben Sie den Namen „WaitMessage“ in der Spalte „Property“ ein. Geben Sie in der Spalte „Value“ der Tabelle „Property“ Folgendes ein: FirstMessage.
  11. Fügen Sie der Tabelle ControlEvent ein SetProperty-ControlEvent hinzu, das WaitMessage bei jedem Öffnen eines Dialogfelds New Selection auf „FirstMessage“ initialisiert. Geben Sie den Bezeichner für das Dialogfeld, das in der Dialogfeldsequenz unmittelbar vor dem Dialogfeld „Selection“ auftritt, in der Spalte „Dialog_“ ein. Geben Sie den Bezeichner für das Steuerelement in diesem Dialogfeld ein, mit dem das Dialogfeld „Selection“ in der Spalte „Control_“ geöffnet wird. Geben Sie in der Spalte „Event“ die Zeichenfolge „[WaitMessage]“ ein. Geben Sie in der Spalte „Argument“ die Zeichenfolge „[FirstMessage]“ ein. Geben Sie in der Spalte „Condition“ den Wert „1“ ein, und lassen Sie die Spalte „Ordering“ leer.
  12. Fügen Sie der Tabelle ControlEvent ein SetProperty-ControlEvent hinzu, mit dem Waitmessage auf „SecondMessage“ festgelegt wird, wenn die Benutzer*innen das Dialogfeld WaitForCosting schließen, bevor die Speicherplatzberechnung abgeschlossen ist. Geben Sie den Bezeichner des Dialogfelds WaitForCosting in der Spalte „Dialog_“ ein. Geben Sie den Bezeichner des Textsteuerelements in der Spalte „Control_“ ein. Geben Sie in der Spalte „Event“ die Zeichenfolge „[WaitMessage]“ ein. Geben Sie in der Spalte „Argument“ die Zeichenfolge „[SecondMessage]“ ein. Geben Sie in der Spalte „Condition“ die Zeichenfolge „NOT CostingComplete“ ein, und lassen Sie die Spalte „Ordering“ leer.
  13. Im folgenden Schritt wird das Attribut „Text“ des Steuerelements mit dem ControlEvent verknüpft, das das Dialogfeld WaitForCosting erzeugt. Dies führt dazu, dass das Installationsprogramm jedes Mal den Wert der WaitMessage-Eigenschaft an das Attribut „Text“ des Steuerelements übergibt, wenn die Benutzer*innen ein Dialogfeld WaitForCosting öffnen.
  14. Abonnieren Sie das Attribut „Text“ des Steuerelements für das SpawnWaitDialog-ControlEvent, das das Dialogfeld WaitForCosting öffnet, indem Sie der Tabelle EventMapping einen Datensatz hinzufügen. Geben Sie den Bezeichner des Dialogfelds WaitForCosting in der Spalte „Dialog_“ ein. Geben Sie den Bezeichner des Textsteuerelements in der Spalte „Control_“ ein. Geben Sie „SpawnWaitDialog“ in der Spalte „Event“ ein. Geben Sie den Bezeichner für das Attribut „Text“ des Steuerelements in der Spalte „Attribute“ der Tabelle „EventMapping“ ein.