Ist der layout Parameter 'in' die feine Art?

Fragen zu Tkinter.
Antworten
Alfons Mittelmeyer
User
Beiträge: 1715
Registriert: Freitag 31. Juli 2015, 13:34

Habe mir einmal SpecTcl angesehen. Wollte den tcl/tk Code nach tkinter konvertieren.

Dabei fiel mir Folgendes auf. Die Widgets waren alle in der root definiert. Platziert wurden sie aber in anderen Container Widgets über den 'in' Parameter. Also das Containerwidget für grid und der Master waren nicht identisch.

Code: Alles auswählen

name: ._labelframe_2 , master: . , in: .
name: ._button_1 , master: . , in: ._labelframe_2
name: ._entry_1 , master: . , in: ._labelframe_2
name: ._label_1 , master: . , in: ._labelframe_2
name: ._checkbutton_1 , master: . , in: ._labelframe_2
Ist das die feine Art das zu tun? Ich habe das zwar nach tkinter konvertiert allerdings nicht als Code sondern nur durch tkinter Widget Erzeugung, allerdings auch mit Namensübergabe. Und dadurch wurde der Name aus tcl/tk für 'in' anstandslos von tkinter akzeptiert.

Alle Widgets in der root anlegen und dann über 'in' sie in anderen Widgets platzieren ist wohl nicht die ganz richtige Art, oder?

Wenn man da die GUI schön mit Klassen für Containerwidgets unterteilt und dann gar keine Widgets drin hat, weil man die über 'in' hineinsetzt, entspricht keiner Aufteilung, die man dann auch schön in kleinere Einheiten aufsplitten kann.

So ein 'in' über mehrerer Klassen hinweg über Code Generierung zu erzeugen, dürfte aufwendig sein, da man dann am Ende noch alle Klassen und Attribnutnamen wissen müsste. Am Besten wohl, wenn man den Master umhängt.

Nur die Frage, wie dann die Namen in der tcl/tk Childrenliste aussehen. Wahrscheinlich wohl mit zusätzlichen Punkten dazwischen? Dafür wollte ich mir eigentlich ein Beispiel mittels SpecTcl erzeugen, aber das war dann nichts.

Oder hat jemand eine kleine Beispiel GUI in tcl/tk auch mit Containern und Widgets darin?
Antworten