Verweis: | Hexadezimale Color-Angabe Color-Dialog Bedienung |
Uses: | StdCtrls |
Eingabe: | Farbe als TrueColor BGR : Integerwert |
Ausgabe: | Hintergrundfarbe |
Funktion: | Färbt den Hintergrund des Labels ein. |
Vorbereitung: Erstellen sie eine IDE Anwendung und ziehen Sie vier TLabel auf die Form. Schalten Sie die Eigenschaft Align des Labels auf alClient. Und die Farbe des Labels auf clCream. Wählen Sie die Farbe über die Dropdownliste des Objektinspektors aus. oder Sie wählen die gelbe Farbe, im unteren Eintrag, im ColorDialog an. Wenn Sie alles richtig gemacht haben, dann sieht das ganze so aus.

Die gegenteilige Eigenschaft von Color ist Transparent. Wenn Sie also die Eigenschaft Color angeben, dann stellt Lazarus die Eigenschaft Transparent auf False.

Wenn sie nun die Eigenschaft Transparent im Objektexplorer wieder auf True setzen, dann ist die gelbe Farbe weg. In der Eigenschaft Color steht nun die Farbe clNone was so viel heißt wie keine Farbe. Wenn jetzt wieder die Transparent Eigenschaft auf False stellen, bekommen Sie die Farbe clBackround und die ist systemabhängig. Bei mir ist Sie dunkelgrau.
FarbTypen
Standard Farben
clBlack, clMaroon, clGreen, clOlive, clNavy, clPurple, clTeal, clGray/clDkGray, clSilver/clLtGray, clRed, clLime, clYellow, clBlue, clFuchsia, clAqua, clWhite
Extra Farben
clMoneyGreen, clSkyBlue, clCream, clMedGray
System Farben
clScrollBar, clBackground, clMenu, clWindow, clMenuText, clHighlight, clBtnFace, clBtnShadow, clActiveCaption, clInactiveCaption, clWindowFrame, clWindowText, clCaptionText, clActiveBorder, clInactiveBorder, clAppWorkspace
Die Standard- und die Extra-Farben sind immer gleich. Die System-Farben sind abhängig von den Benutzereinstellungen des jeweiligen Systems. Diese werden durch Desktop-Themen oder Desktop-Design-Programme festgelegt. Sie erkennen die aktuellen Farben am Pull-Down-Menü Ihres Objektexplorers.

Wenn Sie ein Label mit Hintergrundfarbe also mit Color benutzen, dann wäre es sinnvoll, wenn Sie hier dann entweder beide Farben bestimmen,(Vorder- und Hintergrundfarbe) oder beide Farben dem System überlassen. Da Ihr Programm sonst unter Umständen über eine unsichtbare Schrift verfügt.
Unsichtbare Schrift
Alle Windows Versionen und auch Linux kann man so einstellen, dass diese über ein anderes Design verfügen. Hier kann der Text dann nicht schwarz auf weiß sein, sondern weiße Schrift auf schwarzem Untergrund. Dies führt bei einem auf weiß festgelegtem Hintergrund zu einer weißen Schrift auf weißem Hintergrund. Also wird die Schrift unsichtbar. Windows 10 hat hierbei eine Besonderheit.In Windows 10 kann man zwischen hell und dunkel wählen. Dies unterstützen die meisten Programme nicht. Denn hier wird nicht mehr, wie seit Windows 95 üblich, die üblichen Windows Farbparameter geändert. Vielmehr wird hier ein neuer Eintrag in der Registry genutzt und abgefragt. Für mich ist das wirklich unbegreiflich. Weil das einzelne editieren der Farben doch keine Wünsche offen lies. In Linux Mint funktioniert das Ganze ohne Probleme. Sie können die unter Windows 10 die Farbe nur noch mit der Einstellung „Hoher Kontrast“ wählen. Hier sind die Einstellungen auf 4 Möglichkeiten begrenzt.
Fazit
Wenn Sie ein Anwenderprogramm schreiben, dann macht es Sinn, wenn Sie die Einstellungen des Benutzers akzeptieren. Ich bin kein Freund von einem dunklen Hintergrund mit heller Schrift, aber wenn sich ein Benutzer das so eingestellt hat, dann wird er seine Gründe haben. Dies sollten Sie als Programmierer akzeptieren. Es wurden schon gute Programme geschmäht, weil diese ein eigenwilliges Design hatten. Der Benutzer möchte sich möglichst schnell zurecht finden. Das gilt auch für die Farbe. Wenn Sie ein Spiel programmieren wollen, werden Sie sowieso mit Bitmaps arbeiten müssen.
Tipp
Wenn Sie die Farben nur vereinzelnd benutzen mag es schon vernünftig sein. Um zum Beispiel eine Warnung zu unterstreichen (Rot/Gelb). Bedenken Sie jedoch, dass Sie bei der Festlegung einer Vordergrundfarbe auch die Hintergrundfarbe festlegen. Wenn Sie die Systemfarben für andere Zwecke einsetzen, dann sollten Sie auf eine vernünftige Kombination achten.
- clHighlight und clHighlightText
- clBtnFace und clBtnText
- clWindow und clWindowText
Obwohl der Anwender bei einer Verdrehung der Farben auch nicht einverstanden sein wird. Da Sie ihn damit beim Lernen der Funktionen irritieren. Das vergessen Programmierer häufig, weil sie sich sehr gut mit dem Programm auskennen. 🙂