x.config funktioniert nicht

Fragen zu Tkinter.
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

Wo hast Du denn die Dokumentation zu tkinter gesucht?
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich habe gerade nochmal selbst gesucht. Meine Guete. Die Dokumentation rund um tkinter ist ein solcher Cluster-Fuck, es ist schon beeindruckend.

@timm4444 du glaubst (oder behandelst es zumindest so), das place() das Widget zurueck liefern wuerde. Tut es nicht. Es liefert None. Und konsequenterweise kracht es dann.

Separier die Anlage eines Widgets von seiner Platzierung, und es funktioniert. Und dann der uebliche Hinweis: place ist Mist. Grosser Mist. Benutz es nicht, sondern bau dein Layout mit grid und pack auf (wobei man die, wie alle layout-Methoden, nicht in einem Container, also einem Fenster oder einem Frame, mischen darf).
timm4444
User
Beiträge: 51
Registriert: Samstag 1. August 2020, 14:11

Ok, danke, jetzt funtioniert es, nachdem ich noch ein "root.update()" hinzugefügt habe.
Frage: Wieso geht

Code: Alles auswählen

abc =label().place()
nicht, aber getrennt?
__deets__
User
Beiträge: 14494
Registriert: Mittwoch 14. Oktober 2015, 14:29

Habe ich doch gesagt. place liefert None zurueck. Das sagt doch auch dein Fehler.

Code: Alles auswählen

AttributeError: 'NoneType' object has no attribute 'config'
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@timm4444: Das `root.update()` ist falsch und gefährlich. GUI-Programmierung ist nicht linear, da arbeitet man mit Ereignissen. Und für jede nicht-triviale GUI kommt man um objektorientierte Programmierung (OOP) nicht herum. Also eigene Klasse(n) schreiben.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
timm4444
User
Beiträge: 51
Registriert: Samstag 1. August 2020, 14:11

Ok, ich werde wenn mein Programm fertig ist, es mit Klassen umprogrammieren.
Antworten