So ändern Sie die Größe der Tkinter-Schaltfläche

Jinku Hu 30 Januar 2023
  1. Spezifizieren Sie die Optionen height und width, um die Größe des Button-Widgets festzulegen
  2. Setzen Sie width und height in Pixeln des Tkinter- Buttons
  3. Tkinter Button-Größe nach der Initialisierung ändern
So ändern Sie die Größe der Tkinter-Schaltfläche

Die Optionen height und width des Tkinter Button Widgets legen die Größe des erstellten Buttons während der Initialisierung fest. Nach der Initialisierung könnten wir immer noch die Methode configure verwenden, um die Optionen height und width zu konfigurieren, um die Größe des Tkinter Button-Widgets programmgesteuert zu ändern.

Spezifizieren Sie die Optionen height und width, um die Größe des Button-Widgets festzulegen

tk.Button(self, text="", height=20, width=20)

Die height und die width werden auf 20 in der Einheit der Texteinheiten gesetzt. Die horizontale Texteinheit ist gleich der Breite des Zeichens 0, und die vertikale Texteinheit ist gleich der Höhe von 0, beides in der Standardschriftart des Systems.

Anmerkung
Der Grund dafür, dass Tkinter für die Messung von Breite und Höhe Texteinheiten verwendet, aber keine Zoll oder Pixel, liegt darin, dass die Texteinheit das konsistente Verhalten von Tkinter über verschiedene Plattformen hinweg gewährleistet.

Vollständige Arbeitscodes

import tkinter as tk
import tkinter.font as tkFont

app = tk.Tk()
app.geometry("400x200")


buttonExample1 = tk.Button(app, text="Button 1", width=10, height=10)
buttonExample2 = tk.Button(app, text="Button 2", width=10, height=10)

buttonExample1.pack(side=tk.LEFT)
buttonExample2.pack(side=tk.RIGHT)

app.mainloop()

Tkinter Button_Höhe und Breite einstellen

Wie Sie sehen konnten, sind Höhe und Breite des Buttons in den Pixeln nicht gleich, obwohl seine width und height beide auf 10 eingestellt sind.

Setzen Sie width und height in Pixeln des Tkinter- Buttons

Wenn wir die Breite und/oder Höhe des Tkinter Button-Widgets in der Einheit pixel angeben müssen, könnten wir dem Button ein virtuell unsichtbares 1x1-Pixel-Bild hinzufügen. Dann werden die width und die height in der Einheit pixel gemessen.

tk.Button(app, text="Button 1", image=pixelVirtual, width=100, height=100, compound="c")

Wir müssen auch die Option compound auf c oder ebenso tk.CENTER setzen, wenn das unsichtbare Bild und der Text im Button zentriert werden sollen. Wenn compound nicht konfiguriert ist, wird der text in der Schaltfläche nicht angezeigt.

import tkinter as tk
import tkinter.font as tkFont

app = tk.Tk()
app.geometry("300x100")
fontStyle = tkFont.Font(family="Lucida Grande", size=20)

labelExample = tk.Label(app, text="20", font=fontStyle)

pixelVirtual = tk.PhotoImage(width=1, height=1)

buttonExample1 = tk.Button(
    app, text="Increase", image=pixelVirtual, width=100, height=100, compound="c"
)
buttonExample2 = tk.Button(
    app, text="Decrease", image=pixelVirtual, width=100, height=100, compound="c"
)

buttonExample1.pack(side=tk.LEFT)
buttonExample2.pack(side=tk.RIGHT)
app.mainloop()

Tkinter Button-Größe nach der Initialisierung ändern

Nachdem das Button-Widget erstellt wurde, könnte die configure-Methode die Optionen “Breite” und/oder “Höhe” setzen, um die Größe des Button-Widgets zu ändern.

buttonExample1.configure(height=100, width=100)

Sie setzt die height und die width von ButtonBeispiel1 auf 100.

Vollständige Arbeitsbeispiele zur Änderung der Größe von Buttons nach der Initialisierung

import tkinter as tk
import tkinter.font as tkFont

app = tk.Tk()
app.geometry("600x500")


def decreaseSize():
    buttonExample1.configure(height=100, width=100)


def increaseSize():
    buttonExample2.configure(height=400, width=400)


pixelVirtual = tk.PhotoImage(width=1, height=1)

buttonExample1 = tk.Button(
    app,
    text="Decrease Size",
    image=pixelVirtual,
    width=200,
    height=200,
    compound="c",
    command=decreaseSize,
)
buttonExample2 = tk.Button(
    app,
    text="Increase Size",
    image=pixelVirtual,
    width=200,
    height=200,
    compound=tk.CENTER,
    command=increaseSize,
)

buttonExample1.pack(side=tk.LEFT)
buttonExample2.pack(side=tk.RIGHT)
app.mainloop()

Tkinter ändern Schaltfläche Größe

Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook

Verwandter Artikel - Tkinter Button