Tkinter Tutorial - Etiketten-Widget

Jinku Hu 30 Januar 2023
  1. Python Tkinter Label Widget
  2. Python-Label-Schriftart ändern
  3. Python Tkinter Etikettenfarbe(n) ändern
  4. Bild in Python Tkinter Label anzeigen
Tkinter Tutorial - Etiketten-Widget

Das Label-Widget zeigt einen Textstring oder ein Bild an, dessen Inhalt normalerweise nicht dynamisch sein soll. Natürlich können Sie den Inhalt ändern, wenn Sie möchten.

Python Tkinter Label Widget

from sys import version_info

if version_info.major == 2:
    import Tkinter as tk
elif version_info.major == 3:
    import tkinter as tk

app = tk.Tk()
labelExample = tk.Label(app, text="This is a Label")
labelExample.pack()
app.mainloop()

Es erzeugt ein Fenster mit einer Textbeschriftung innerhalb des Hauptfensters.

Tkinter Basic Beschriftung

labelExample = tk.Label(app, text="This is a label")

labelExample ist eine Label-Instanz, die This is a label mit dem Elternteil app anzeigt.

labelExample.pack()

Die pack() Methode verwaltet das Layout des jeweiligen Widgets im übergeordneten Widget. Sie hat folgende Optionen

pack() Methode Beschreibung
after=Widget packen Sie es, nachdem Sie das Widget gepackt haben
anchor=NSEW (oder Teilmenge) Positionswidget nach
before=Widget Packen Sie es, bevor Sie das Widget einpacken.
expand=bool Widget erweitern, wenn die Größe der Eltern wächst
fill=keine oder x oder y oder beides Widget füllen, wenn das Widget wächst
in=Meister Master verwenden, um dieses Widget zu enthalten
in_=Herrn siehe ‘in’ Optionsbeschreibung
ipadx=Menge interne Polsterung in x-Richtung hinzufügen
ipady=amount interne Polsterung in y-Richtung hinzufügen
padx=Menge Polster in x-Richtung hinzufügen
Pady=Betrag in y-Richtung abpolstern
side=top oder bottom oder left oder right wo man dieses Widget hinzufügen kann.

Sie können die Optionen ändern, um das unterschiedliche Layout des Widgets zu erhalten.

Die Dimension des Labels wird durch Breite und Höhe angegeben, die zu den Widget-spezifischen Optionen des Labels gehören.

Info
Breite und Höhe haben die Einheit von Texteinheiten, wenn es Text enthält, und seine Größe ist Pixel, wenn es ein Bild anzeigt.

Sie können die Eigenschaften von Labels mit dem Befehl dict(label) erhalten,

from sys import version_info

if version_info.major == 2:
    import Tkinter as tk
elif version_info.major == 3:
    import tkinter as tk

from pprint import pprint

app = tk.Tk()
labelExample = tk.Label(app, text="This is a Label", height=15, width=100)
pprint(dict(labelExample))

Die Eigenschaften sind nachfolgend aufgeführt

{'activebackground': 'SystemButtonFace',
 'activeforeground': 'SystemButtonText',
 'anchor': 'center',
 'background': 'SystemButtonFace',
 'bd': <pixel object at 00000000048D1000>,
 'bg': 'SystemButtonFace',
 'bitmap': '',
 'borderwidth': <pixel object at 00000000048D1000>,
 'compound': 'none',
 'cursor': '',
 'disabledforeground': 'SystemDisabledText',
 'fg': 'SystemButtonText',
 'font': 'TkDefaultFont',
 'foreground': 'SystemButtonText',
 'height': 15,
 'highlightbackground': 'SystemButtonFace',
 'highlightcolor': 'SystemWindowFrame',
 'highlightthickness': <pixel object at 00000000048FF100>,
 'image': '',
 'justify': 'center',
 'padx': <pixel object at 00000000048FED40>,
 'pady': <pixel object at 00000000048FF0D0>,
 'relief': 'flat',
 'state': 'normal',
 'takefocus': '0',
 'text': 'This is a Label',
 'textvariable': '',
 'underline': -1,
 'width': 100,
 'wraplength': <pixel object at 00000000048FED70>}

Jetzt kennen Sie die Eigenschaften des Etiketts, dann könnten Sie durch Ändern der Etiketten ein anderes Aussehen erhalten.

Python-Label-Schriftart ändern

Im Folgenden zeigen wir Ihnen verschiedene Methoden zur Konfiguration der Etikettenschriftart.

from sys import version_info

if version_info.major == 2:
    import Tkinter as tk
elif version_info.major == 3:
    import tkinter as tk

import tkFont

app = tk.Tk()
labelExample1 = tk.Label(app, text="Customized Label 1", font=("Times", 20))
labelExample2 = tk.Label(app, text="Customized Label 2", font=("Times", 20, "italic"))

labelFont3 = tkFont.Font(
    family="Helvetica", size=20, weight=tkFont.BOLD, underline=1, overstrike=1
)
labelExample3 = tk.Label(app, text="Customized Label 3", font=labelFont3)
labelExample1.pack()
labelExample2.pack()
labelExample3.pack()
app.mainloop()

Tkinter Label mit modifizierter Schriftart

Python Tkinter Label Font mit einem Tupel setzen

labelExample1 = tk.Label(app, text="Customized Label 1", font=("Times", 20))
labelExample2 = tk.Label(app, text="Customized Label 2", font=("Times", 20, "italic"))

Ein Tupel mit der Schriftart als erstes Element, gefolgt von Größe, Stil wie Gewicht, Kursiv, Unterstreichen und/oder Überstreichen.

Python Tkinter Label Font mit tkFont Font Objekt setzen

labelFont3 = tkFont.Font(
    family="Helvetica", size=20, weight=tkFont.BOLD, underline=1, overstrike=1
)
labelExample3 = tk.Label(app, text="Customized Label 3", font=labelFont3)

Sie könnten auch das Font-Objekt im tkFont Modul verwenden, um die Eigenschaften der Schriftart für den Etikettentext festzulegen.

Die Schriftart in labelExample3 ist die Schriftfamilie Helvetica, Größe 20, fett, unterstrichen und überstrichen.

from sys import version_info

if version_info.major == 2:
    import Tkinter as tk
elif version_info.major == 3:
    import tkinter as tk

import tkFont
from pprint import pprint

app = tk.Tk()
pprint(tkFont.families())

Python Tkinter Etikettenfarbe(n) ändern

Sie können die Vorder- und Hintergrundfarbe des Labels mit Hilfe der fg/bg Eigenschaften ändern.

labelExample1 = tk.Label(app, text="Customized Color", bg="gray", fg="red")

Tkinter Ändern Widget Vorder- und Hintergrundfarbe

Bild in Python Tkinter Label anzeigen

Die Eigenschaft image in label wird verwendet, um das Bild im Etikett anzuzeigen.

from sys import version_info

if version_info.major == 2:
    import Tkinter as tk
elif version_info.major == 3:
    import tkinter as tk


app = tk.Tk()
logo = tk.PhotoImage(file="python.gif")
labelExample = tk.Label(app, image=logo)
labelExample.pack()
app.mainloop()

Tkinter Bild in Label

Warnung
tk.PhotoImage konnte nur farbige Bilder im GIF-, PPM/PGM-Format anzeigen. Es erzeugt _tkinter.TclError: konnte die Daten in der Bilddatei nicht erkennen, wenn Sie andere Bildformate verwenden.
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