2017-10-02 37 views
-4

Eigentlich habe ich ein Gitter mit vielen Elementen.Python Tkinter: reaktives Gitter

Wie kann ich es mit dem Hauptrahmen befestigen für eine ansprechende App tun

content.grid(column=0, row=0, sticky='nwse') 
userButt.grid(column=2, row=1, sticky='nwse') 
favoButt.grid(column=3, row=1, sticky='nwse') 
locaButt.grid(column=4, row=1, sticky='nwse') 
histScal.grid(column=5, row=1, sticky='nwse') 

Thx

+0

Bitte stellen Sie Ihre Frage klarer, indem Sie sie bearbeiten. – LW001

+0

Definieren Sie "reaktionsfähig". Wenn hinter Ihrer Formulierung "auf die Größenänderung des Fensters reagiert", dann lesen Sie [diese] (http://www.tkdocs.com/tutorial/grid.html) (besonders "Handling resize" Teil). – CommonSense

Antwort

0

Als Faustregel gilt, wenn Sie verwenden grid Sie immer mindestens eine Zeile und eine geben sollte Spalte ein Nicht-Null-Gewicht, so dass tkinter weiß, wo zusätzlichen Platz zu reservieren ist. Ein Gewicht von 0 (Null) wird standardmäßig zugewiesen.

Die zwei häufigsten Fälle sind, wo Sie ein "Helden" -Widget haben (z. B. ein Text-Widget, Canvas-Widget, etc.), das nach Bedarf vergrößert oder verkleinert werden sollte. Für den Fall, dass ein Widget den gesamten zusätzlichen Speicherplatz erhält, geben Sie nur der Zeile und Spalte, in der das Widget platziert ist, eine Gewichtung. Wenn Sie möchten, dass sich alle Größen gleich ändern, geben Sie jeder Zeile und jeder Spalte ein Gewicht.

Unter der Annahme, dass die Eltern der Widgets content, userButt , etc are root`, können Sie es so machen könnte:

root.grid_rowconfigure(0, weight=1) 
root.grid_columnconfigure(0, weight=1) 

In dem obigen Beispiel alle zusätzlichen Platz gehen würde Null und Spalte Zeile 0

+0

danke für deine antwort, es funktioniert – Deakox