Dieses Beispiel zeigt, wie Sie die Hintergrundfarbe von Teilformularen, Feldern und Füllbereichen in einem Formular als Reaktion auf Benutzeraktionen zur Laufzeit ändern.
In diesem Beispiel ändert sich die Hintergrundfarbe eines bestimmten Objekts, wenn der Benutzer auf eine Schaltfläche klickt.
Hinweis:
Um die Hintergrundfarbe von Objekten zur Laufzeit zu ändern, müssen Sie Ihr Formular im Format "Acrobat (Dynamisch) XML-Formular" speichern.
Zum Anzeigen dieser Beispieldatei und anderer rufen Sie das
Developer Center
auf.
Skripten für die Hintergrundfarben von Teilformularen und Textfeldern
Die Hintergrundfarben von Teilformularen und Textfeldern werden mit der Methode
fillColor
eingestellt. Beispielsweise stellt die folgende Zeile das Skript für das Teilformular dar:
Subform1.fillColor = "17,136,255";
Die folgenden Zeilen bilden das Skript für die Hintergrundfarbe der Textfelder:
Subform1.Name.fillColor = "102,179,255";
Subform1.Address.fillColor = "102,179,255";
Subform1.City.fillColor = "102,179,255";
Subform1.State.fillColor = "102,179,255";
Subform1.ZipCode.fillColor = "102,179,255";
Subform1.Country.fillColor = "102,179,255";
Skripten für die Hintergrundfarbe von Füllbereichen
Beim Festlegen der Hintergrundfarbe oder des Füllbereichs für die einzelnen Textfelder müssen die Skripten auf Eigenschaften zugreifen, die einen Referenz-Syntax-Ausdruck mit dem Nummernzeichen (#) erfordern. Da JavaScript das Nummernzeichen (#) in Referenz-Syntax-Ausdrücken nicht richtig interpretiert, verwendet das Skript zur Auflösung des Ausdrucks die Methode
resolveNode
.
xfa.resolveNode("Subform1.Name.ui.#textEdit.border.fill.color").value = "153,204,255";
xfa.resolveNode("Subform1.Address.ui.#textEdit.border.fill.color").value = "153,204,255";
xfa.resolveNode("Subform1.City.ui.#textEdit.border.fill.color").value = "153,204,255";
xfa.resolveNode("Subform1.State.ui.#textEdit.border.fill.color").value = "153,204,255";
xfa.resolveNode("Subform1.ZipCode.ui.#textEdit.border.fill.color").value = "153,204,255";
xfa.resolveNode("Subform1.Country.ui.#textEdit.border.fill.color").value = "153,204,255";
Skripten für die Schaltfläche "Alles löschen"
Im Skript für die Schaltfläche „Alles löschen“ werden der Formularentwurf und die Formulardaten mit Hilfe der Methode
remerge
erneut zusammengeführt. In diesem Beispiel stellt die Methode die Felder, Füllbereiche und Teilformulare in ihrem Originalzustand wieder her.
xfa.form.remerge();