Tkinter ändert die ausgewählte Hintergrundfarbe auf einem unfokussierten Text-Widget

8

Ich versuche, die Standardhintergrundfarbe für ausgewählten Text in einem Tkinter Text-Widget unter Mac OS X zu ändern, wenn das Widget keinen Fokus hat . Die standardmäßig nicht ausgewählte Auswahlfarbe ist grau. Nach vielen Stunden der Suche war ich nicht in der Lage, eine Out-of-the-Box-Lösung dafür zu finden. Hier ist was ich versucht habe:

  • Durch das Ändern der Auswahlfarbe mit der Option selectbackground wird die Auswahlfarbe nicht geändert, wenn das Widget nicht fokussiert ist. Z.B. Es bleibt grau.
  • Auch nicht Text.tag_configure("sel", background=...)
  • Die Verwendung von ttk.Style.map mit dem Status "!focus" funktioniert bei Eingabe-Widgets (und anderen), aber nicht bei Text-Widgets.

Also musste ich selbst rollen (siehe unten). Gibt es einen besseren Weg, dies zu tun?

%Vor%     
Jason Oster 04.03.2012, 03:42
quelle

1 Antwort

11

Digging durch den Tk-Quellcode führte mich zur Antwort! Die Option inactiveselectbackground legt die Farbe fest.

%Vor%     
Jason Oster 04.03.2012 21:00
quelle

Tags und Links