Seite 1 von 2

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 08.07.2013, 22:55
von nele_sonntag
  • Du hast ein Dropdown.
  • Du möchtest gern, dass etwas passiert, wenn ein Eintrag ausgewählt wurde?
 
Dann dürfte dieses Tutorial etwas für Dich sein!
 
Dieses Tutorial zeigt Dir Schritt für Schritt, wie du so etwas programmieren kannst. Jede Zeile des Programmiercode ist kommentiert, damit du weißt, was genau passiert und wo Du es an Deine Bedürfnisse anpassen kannst.
 
Ausdrücklich beschrieben ist, wie du Textfelder ein- und ausblenden kannst. Genauso kannst Du aber anstatt dessen auch Nummernfelder, Datumsfelder, Optionsfelder oder Teilformulare benutzen..also quasi alles, was du möchtest.
 
Genauso kannst du natürlich,
  • anstatt etwas ein-/auszublenden (Befehl Objektname.presence = „visible | invisible | hidden“)
  • auch Feldern einen Text zuweisen (Befehl Objektname.rawValue = „Hier kommt Dein Text.“)
  • Felder auf schreibgeschützt setzen (Befehl Objektname.access = „open | readOnly | protected“)
  • Felder als Pflichtfeld deklarieren (Befehl Objektname.mandatory = „error | disabled“)
  • usw.
 
Die Programmierabfrage des Drowdowns bleibt idR immer gleich.
 
Bin - wie immer - für Verbesserungsvorschläge offen. Gerne natürlich aber auch für positives Feedback!
 
LG Mandy

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 08.07.2013, 22:55
von nele_sonntag
Und hier habt ihr passend zur Anleitung ein Formular.

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 05.08.2013, 17:14
von elduende
Hallo Nele,

bin neu hier und auch echter Anfänger, daher finde ich Deine Tips sehr hilfreich.

Habe das jetzt versucht zu verstehen und auch weitestgehend verinnerlicht.
Aber nun meine Frage:
Geht das auch mit Teilformularen.

Habe mehrere Felder zu einem Teilformular zusammengefasst...nennen wir es "Teilformular A" und es gibt noch ein "Teilformular B".
Je nachdem welche Dropdown Inhalt gewählt wurde (wie in deinem Beispiel), soll "Teilformular A" eingeblendet und "Teilformular B" ausgeblendet werden/bleiben.

Ist das möglich?

Gruß

Thorsten

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 05.08.2013, 18:47
von armine
Hallo Thorsten,

warum fragst du, statt es zu machen? Es geht.

vg armine

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 05.08.2013, 20:12
von elduende
:)

Achso,

habe mich vielleicht falsch ausgedrückt.
Habe es natürlich probiert und es funktionierte nur, wenn ich das einzelne Feld ein- und ausgeblendet habe.

Code: Alles auswählen

switch(xfa.event.newText)
{
Case "ledig":

Seite_1.TeilformularA.presence ="visable";
Seite_1.TeilformularB.presence ="hidden"; 
break;

Case "verheiratet":

Seite_1.TeilformularB.presence ="visable";
Seite_1.TeilformularA.presence ="hidden";
break;
}
 
So habe ich es probiert...
Wo ist da mein Fehler?

danke

Thorsten

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 06.08.2013, 02:23
von armine
Hallo Thorsten,

was alles falsch ist, läßt sich ohne deine Datei nicht feststellen. Es fällt aber auf, dass du den Debugger nicht nutzt. Der hätte dir gesagt, dass du mit "Case" keinen Blumentopf gewinnen wirst und "visable" macht nichts sichtbar. Verwende besser "case" bzw. "visible".

Deinen Code habe ich geflickt und schon gehts. Darunter habe ich als Beispiel meinen Code (auskommentiert) gestellt. Da kannst du auch sehen, was beim Referenzieren gebraucht wird. Deine Gewissenhaftigkeit (Seite_1) stört hier nicht, du solltest aber Entbehrliches generell weglassen.

Mit switch/case schießt du hier mit Kanonen auf Spatzen. Wie du in einer weiteren DDL sehen kannst, tut es if/else auch.

Am Kopf des Script Editors findest du ein Buch-Symbol. Das kannst du anklicken, wenn dein Code nicht läuft. Offenbar unverständliches wird dann markiert. Wie du den Debugger in Betrieb nimmst, kannst du hier im Forum finden.

vg armine

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 06.08.2013, 09:05
von elduende
Hallo Armine,

danke für Deine hilfe...
Zu dem Fehler kam es, da ich das zu Hause auf meinem Rechner getippt habe.
Da habe ich leider keinen LCD und somit kein Debugger, nur in der Firma.

Sorry wenn ich mich noch ein wenig dumm anstelle, aber bin im LCD und xml noch absoluter Anfänger. Habe nur ein wenig Erfahrung in VBA.
XML scheint zwar nicht schwer zu sein, es gibt aber doch unterschiede.

Danke für Deine Hilfe, so läuft es perfekt.

Gruß

Thorsten

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 13.08.2013, 15:17
von ommione
Hallo Armine,

ich habe es mir erlaubt Deine Vorschläge anzuschauen um die ersten Schritten im LCD zu bewältigen.
Deine Beispiele haben mir geholfen, dafür bedanke ich mich bei Dir.

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 19.09.2013, 09:26
von grueter6
Hallo Mandy

Danke für Deine super Anleitung!

Leider kann ich bei meinem Formular die hidden niergends finden?
Das erste Dropdown müsste im "dynamischer_inhalt" die verschiedenen Teilformulare ein und ausblenden.
Das zweite Dropdown müsste das Hintergrundbild "bild" im im Teilformular "layout" ein & ausblenden.

Kannst DU ein Fehler finden oder habe ich da eine Grundlegenden Überlegungsfehler?


lg grueter6

TUTORIAL - LCD für Dummies – PROGRAMMIEREN von DROPDOWNs

Verfasst: 19.09.2013, 15:48
von armine
Hallo grueter6,

klappt es so, wie von dir gedacht?

Wenn etwas "hidden" ist, dann kannst du es immer noch in der Hierarchie finden und zum Bearbeiten einblenden.

Wenn du ein Bild nicht permanent einbindest, kann man damit auch nicht arbeiten. Also habe ich es in ein Teilformular gesteckt und damit kannst die Funktionalität prüfen.

Das Ein- bzw. Ausblenden der Teilformulare kannst di mit "if" und "else if" oder mit "switch/case" regeln. Mir schien es bequemer die TF-Namen in ein Array zu stecken und das Ein- und Ausblendenin einem Schleifendurchlauf zu erledigen.

Wenn du das aktuelle Datum beim Start einfügst, dann solltest du darauf achten, dass es nicht beim Öffnen des abgespeicherten Formulars aktuallisiert wird. Vor Vergabe der erweiterten Recht für den Reader ist das Feld im Acrobat zu löschen.

vg armine