Ihre Formulare müssen möglicherweise je nach den Bedürfnissen Ihrer Kunden oder Benutzer geändert werden. Zum Beispiel könnte die Farbe Schwarz für einen Benutzer perfekt sein, aber nicht so sehr für einen anderen Benutzer (der Blau als die ultimative Perfektion ansieht). Zum Glück gibt es dynamische Formulare (eingeführt mit 4D v16 R6), die Ihnen helfen, die Vorlieben Ihrer Benutzer zu berücksichtigen. Aber ein bestehendes Formular in ein dynamisches Formular umzuschreiben, kann eine schwierige Aufgabe sein, und es ist nicht immer einfach, mit einer leeren Seite zu beginnen. Am besten ist es, einen Entwurf zu haben, der geändert und verbessert werden kann. Mit 4D v17 R3 ist es jetzt möglich, ein klassisches 4D Formular (gespeichert in einer .4DB Datei) in ein dynamisches Formular zu konvertieren.
Hierfür steht ein neuer Befehl zur Verfügung. Übergeben Sie den Formularnamen und Sie erhalten ein Objekt, das das Formular beschreibt.
$oForm:=FORM Convert to dynamic("meinProjektFormular")
Dann können Sie schnell und einfach Änderungen am Formular vornehmen. Zum Beispiel können Sie die Schriftfarbe für alle Objekte mit der Beschriftung „Abbrechen“ in Ihrem Formular per Code ändern:
// iterate on all objects of first page
$pageObjects:=$oForm.pages[1].objects
For each ( ; ) ( ( [ ]. )="@Cancel@") [ ]. :="rot" ($object$pageObjects
IfString$pageObjects$objecttext // all widgets with a "Cancel" caption text
$pageObjects$objectstroke // change it to red color
End if
End for each
DIALOG$oForm)
Ein anderes Beispiel: Sie können das dynamische Formular in einer Datei auf dem Computer des Benutzers speichern und personalisierte Änderungen nur für diesen spezifischen Benutzer vornehmen.
Die Schriftfarbe war nur ein einfaches Beispiel. Aber das ist noch nicht alles … Schriftart, Schriftgröße, Eingabemöglichkeit, Format, Position, Größenänderung, Größenänderungsoption, zugewiesene Objektmethode oder Formularereignisse, und vieles mehr. Sie können ein Formular im Handumdrehen komplett umgestalten. Die Möglichkeiten sind endlos!