Heim > Backend-Entwicklung > Python-Tutorial > Wie verwendet Tkinter Gewichtungen, um die Raumverteilung in einem Layout zu verwalten?

Wie verwendet Tkinter Gewichtungen, um die Raumverteilung in einem Layout zu verwalten?

Linda Hamilton
Freigeben: 2024-10-25 18:34:04
Original
644 Leute haben es durchsucht

How Does Tkinter Use Weights to Manage Space Distribution in a Layout?

Erweitern mit Gewichtungen in Tkinter

In Tkinter steuert das Konzept der Gewichtungen, wie der verfügbare Platz innerhalb eines Layouts auf Spalten und Zeilen verteilt wird . Jede Zeile oder Spalte verfügt über eine Gewichtsrasteroption, die bestimmt, um wie viel sie erweitert werden soll, wenn zusätzlicher Platz vorhanden ist.

Die Standardgewichtung

Standardmäßig haben alle Zeilen und Spalten diese eine Gewichtung von 0, was bedeutet, dass sie sich nicht ausdehnen sollten, um Platz zu füllen. Dies bedeutet, dass zusätzlicher Platz ungenutzt bleibt.

Hinzufügen von Gewichtungen

Eine Gewichtung ungleich Null führt dazu, dass eine Zeile oder Spalte wächst, wenn zusätzlicher Platz vorhanden ist. Der Wert der Gewichtung bestimmt, wie stark sie sich im Verhältnis zu anderen gewichteten Elementen ausdehnen soll. Beispielsweise weist eine Gewichtung von 1 doppelt so viel Speicherplatz zu wie eine Gewichtung von 0,5.

Codebeispiel

Bedenken Sie den folgenden Code:

<code class="python">import tkinter as tk

root = tk.Tk()
root.geometry("200x100")

f1 = tk.Frame(root, background="bisque", width=10, height=100)
f2 = tk.Frame(root, background="pink", width=10, height=100)

f1.grid(row=0, column=0, sticky="nsew")
f2.grid(row=0, column=1, sticky="nsew")

root.grid_columnconfigure(0, weight=0) # no extra space for column 0
root.grid_columnconfigure(1, weight=0) # no extra space for column 1

root.mainloop()</code>
Nach dem Login kopieren

Dieser Code erstellt ein Fenster, das größer ist als die enthaltenen Frames. Da keine der Spalten eine Gewichtung hat, bleibt der zusätzliche Platz ungenutzt.

Verwenden von Gewichtungen zum Erweitern

Durch das Hinzufügen von Gewichtung zu einer Spalte oder Zeile kann diese ins Zusätzliche erweitert werden Raum. Der folgende Code gibt beispielsweise Spalte 0 eine Gewichtung von 1:

<code class="python">root.grid_columnconfigure(0, weight=1)</code>
Nach dem Login kopieren

Jetzt wird der zusätzliche Platz der Spalte 0 zugewiesen, wodurch sie breiter wird.

Gewichtungsmultiplikator Elemente

Wenn mehrere Spalten oder Zeilen Gewichtungen haben, teilen sie sich den verfügbaren Platz proportional zu ihren Gewichten. Um beispielsweise 1/4 des Platzes der Spalte 0 und 3/4 der Spalte 1 zuzuweisen, können Sie die folgenden Gewichtungen verwenden:

<code class="python">root.grid_columnconfigure(0, weight=1)
root.grid_columnconfigure(1, weight=3)</code>
Nach dem Login kopieren

Dies führt zu einem Layout, bei dem Spalte 0 ein Viertel davon ausmacht die Breite von Spalte 1.

Fazit

Gewichte in Tkinter bieten eine Möglichkeit, die Raumverteilung innerhalb eines Layouts zu steuern. Durch die Zuweisung von Gewichtungen zu Spalten oder Zeilen können Sie bestimmen, wie der verfügbare Platz genutzt wird, was flexible und reaktionsfähige Layouts ermöglicht.

Das obige ist der detaillierte Inhalt vonWie verwendet Tkinter Gewichtungen, um die Raumverteilung in einem Layout zu verwalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage