[Gelöst] Hintegrundfarbe von Form (variabel)

17. Februar 2009 17:13

Wir haben in der Artikelkarte ein neues Feld (Boolean) angelegt und würden die Hintergrundfarbe der Form jetzt von dem neuen Feld abhängig machen.
Ist es möglich, die Hintergrundfarbe von dem Wert des Feldes abhängig zu machen.
Wenn Wert=Nein dann Hintergrundfarbe=Standard
Wenn Wert=Ja dann Hintergrundfarbe=Rot

Hintergrund ist der, dass das Feld gerne übersehen wird, und ich diese "Übersehbarkeit" gerne abschalten würde. :)
Zuletzt geändert von Beowulf am 23. Februar 2009 13:25, insgesamt 1-mal geändert.

Re: Hintegrundfarbe von Form (variabel)

17. Februar 2009 17:21

Die Hintergrundfarbe der Form kannst du leider nicht dynamisch ändern, aber du könntest ein Shape anlegen und ihm einen Namen zuweisen.
So bist du in der Lage, abhängig von deinem Boolean dieses Shape ein- bzw. auszublenden.

Re: Hintegrundfarbe von Form (variabel)

17. Februar 2009 17:43

Hab noch ein bisschen gestöbert und eine Art Ampelfunktion gefunden.
Wie könnte ich ein Shape oder eine Ampel mit in die Form einbauen.
Bitte etwas genauer erklären, bin noch nicht so fit mit den Funktionen. :-?

Re: Hintegrundfarbe von Form (variabel)

17. Februar 2009 21:29

Du erstellt mehrere Shapes, diese finden sich in der Toolbox, und gebe ihnen in den Properties einen Namen. Dann kannst du ihnen auch (über Properties) die jeweilige Farbe zuweisen. Jetzt kannst du über CurrForm.NAMEDESCONTROLS.VISIBLE := TRUE; das Shape zum Beispiel sichtbar machen.

Re: Hintegrundfarbe von Form (variabel)

17. Februar 2009 21:44

Da du ja nur zwischen zwei Farben umschalten möchtest, brauchst du nur ein Shape.
Deine Form selbst hat seine eigene Farbe, welche zum Vorschein kommt, wenn das Shape unsichtbar (CurrForm.NameDeinesShapes.VISIBLE := FALSE) ist.
Schaltest du dein Shape sichtbar (CurrForm.NameDeinesShapes.VISIBLE := TRUE), so überdeckt es die Grundfarbe deiner Form, so dass es aussieht, als würde die Form nun eine andere Farbe haben.