Hyperlink in Tkinter Text Widget?

8

Ich entwerfe einen Teil meines aktuellen Softwareprojekts und möchte Hyperlinks anstelle von Buttons verwenden. Ich wollte wirklich kein Text Widget verwenden, aber das war alles, was ich finden konnte, als ich das Thema googelte. Wie auch immer, ich fand ein Beispiel dafür, aber behalte immer diesen Fehler:

%Vor%

Wenn ich diese Codezeile hinzufüge (mit IDLE )

%Vor%

Der Code für das Modul befindet sich hier und der Code für das Skript befindet sich hier

Hat jemand Ideen?

Der Teil, der Probleme gibt, sagt foreground="blue" , was in Tkinter als Farbe bekannt ist, oder?

    
Zac Brown 04.08.2010, 02:12
quelle

2 Antworten

13

Wenn Sie kein Text-Widget verwenden möchten, müssen Sie dies nicht tun. Eine Alternative besteht darin, ein Label zu verwenden und Mausklicks daran zu binden. Obwohl es ein Label ist, reagiert es immer noch auf Ereignisse.

Zum Beispiel:

%Vor%

Wenn Sie möchten, können Sie sich etwas einfallen lassen und zusätzliche Bindungen für die Ereignisse <Enter> und <Leave> hinzufügen, damit Sie das Aussehen ändern können, wenn der Benutzer die Maus bewegt. Und natürlich können Sie die Schriftart so ändern, dass der Text unterstrichen ist, wenn Sie dies wünschen.

Tk ist ein wundervolles Toolkit, das Ihnen die Bausteine ​​gibt, um genau das zu tun, was Sie wollen. Sie müssen die Widgets nicht nur als vorgefertigte Wände und Türen betrachten, sondern eher als Stapel von Lendenwirbeln, Ziegeln und Mörtel.

    
Bryan Oakley 04.08.2010, 11:00
quelle
1

"blue" sollte in der Tat akzeptabel sein (da Sie unter Windows sind, sollte Tkinter die eingebaute Farbnamen-Tabelle verwenden - es könnte eine Systemfehlkonfiguration auf X11 sein, aber nicht auf Windows); Daher ist dies ein verwirrendes Problem (vielleicht ein Tkinter misconfig ...?). Was passiert, wenn Sie beispielsweise foreground="#00F" verwenden? Das erklärt das Problem nicht, aber vielleicht lässt du es zumindest umgehen ...

    
Alex Martelli 04.08.2010 02:23
quelle

Tags und Links