Hallo in die Runde.
Mal wieder treffe ich auf ein bekanntes Problem. Ich habe die Systemeinstellung für Auswahlfrabe (für z. B. die selektiere Listboxzeile) auf Gelb gestellt. Nun wird der Text einer selektierten Zeile in der Listbox in weiß ausgegeben. Weiß auf gelben Grung ist nicht sonderlich gut erkennbar.
Bislang habe ich das umgangen, indem ich in CellTExtPaint den Text selbst in schwarz ausgebe.
Gibt es eine bessere Lösung?
Welches ist eigentlich die übliche Selectionsfarbe bei Mac OS?
@Emile Schwarz
Ich finde das normale Blau nicht sonderlich hervorgehoben und meine, dass gelb deutlicher ist.
Zu den anderen Kommentare scheint es immer um die Hintergrundfarbe zu gehen und nicht um die Schriftfarbe.
Auch ein Dunkelblau (wie es Windows als Selektionsfarbe nutzt) ist nicht günstig bei schwarzer Schrift. Wird da nicht automatisch auf weiße Schrift umgestellt?
Ich habe gerade heute von einem Anwender gemeldet bekommen, dass man unter Windows 8 und Windows 10 die Selektionsfarbe nicht mehr so einfach umstellen kann.
und in ähnlicher Form gibt es auch selectedTextColor als Klassen-Property von NSColor, das dann einen OS-berechneten Wert für eine zur Auswahlfarbe gut kontrastierende Textfarbe liefert. Auf dem Mac und im Hinblick auf den kommenden Dark Mode dürfte das die beste Wahl sein.
(Nicht zu vergessen, dass die Auswahlfarbe auch unter Systemen < Mojave frei definierbar ist und war einen festen Wert sollte man also besser nicht nehmen, sofern man nicht die komplette Listbox-Gestaltung inkl. CellBackground übernimmt.)
Nun ja, Kontrast wird heute überbewertet. Apple hat mir schon einige Bug-Reports geschlossen, bei denen ich den Text wegen mangelndem Kontrast nicht lesen konnte. Und auf Webseiten ist das doch auch modern mit hellgrau auf weiß.
Diese Benutzer sind zu jung, um diese Sehprobleme zu verstehen (zu geringe Kontraste zwischen der Hintergrundfarbe und der Schrift).
Dass sie medizinische Spezialisten fragen!
Ich schliee mich den Kommentarenb an.
Wie schon geschrieben, nutze ich Gelb als Auswahlfarbe. Mac OS setzt die Schriftfarbe dann auf Wei. Das empfinde ich als zu wenig kontarstreich.
Schade, dass man die Schriftfarbe nicht ebenfalls selbst whlen kann. Wre ja auch zu einfach.
Was meiner Ansicht nach ein no-go ist. Ein Programm hat die im OS definierten Farben zu nutzen. Der Anwender hat sich die nach seinem Geschmack gesetzt.
[quote=397051:@Thomas Eckert] @Stefan Mettenbrink Wie schon geschrieben, nutze ich Gelb als Auswahlfarbe
Was meiner Ansicht nach ein no-go ist. Ein Programm hat die im OS definierten Farben zu nutzen. Der Anwender hat sich die nach seinem Geschmack gesetzt.[/quote]
Du hast mich missvertanden. Ich habe in den Systemeinstellungen die Auswahlfarbe auf gelb gesetzt. Das ist dann auch die Farbe, in der der Finder die ausgewählten Dateien markiert. Diese Farbe wird in den ListBoxen dann ebenfals als Auswahlfarbe genutzt.
Nur für die Schriftfarbe gibt es keine Systemeinstellung. Die setzt das System dann auf Weiß.
Du kannst Die Farbe für den Text im textPaint Event einstellen.
Beim NSColorMBS gibt es ja Textfarben für Listen.
selectedTextColor vermutlich. Die könnte man ja dann nehmen für den Text.