tkinter Beispiele

Grundinfos zu tkinter gibt es hier

Ein Button veranlasst die Ausführung eines Befehls. Um in Python mit TK einen Button zu erstellen gibt es folgende Möglichkeit:

from tkinter import *

def say_hi():
    print("hello ~ !")

root = Tk()

frame1 = Frame(root)
frame2 = Frame(root)
root.title("tkinter frame")

label= Label(frame1,text="Label",justify=LEFT)
label.pack(side=LEFT)

hi_there = Button(frame2,text="Sag Hallo~",command=say_hi)
hi_there.pack()

frame1.pack(padx=1,pady=1)
frame2.pack(padx=10,pady=10)

root.mainloop()


Als erstes werden die benötigten Module importiert. Dann wird ein einfacher Befehl festgelegt.
Der Name des Fensters ist root. Die Bezeichnung wird durch root.tile festgelegt. Die Bezeichnung des Button wird festgelegt und die Beziehung (Frame2 ) und der Text des Button wird festgelegt Falls gewünscht wird mit command ein Befehl ausgeführt beim Anklicken des Button.

tkinter frame photo

Es können verschiedene Arten von Widgets hinzugefügt werden. Das Beispiel zeigt ein tkinter-Rahmenfoto. Es hat auch ein Label. Sie können Ihrem Rahmen jede Art von Widget hinzufügen.

from tkinter import *

root = Tk()

textLabel = Label(root,
                  text="Label",
                  justify=LEFT,
                  padx=10)
textLabel.pack(side=LEFT)

photo = PhotoImage(file="hund.jpg")
imgLabel = Label(root, image=photo)
imgLabel.pack(side=RIGHT)

mainloop()

tkinter – Entry (Eingabefeld)

Über das Eingabefeld tkinter können Sie in die GUI eingeben. Der folgende Code fügt der GUI ein Eingabefeld hinzu. Der erste Parameter ist das, was hinzugefügt werden soll. Der Textparameter definiert, was daneben platziert werden soll.

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
from tkinter import *
 
top = Tk()
L1 = Label(top, text="Label")
L1.pack(side=LEFT)
E1 = Entry(top, bd=5)
E1.pack(side=RIGHT)
 
top.mainloop()

Ein einfaches weiteres Beispiel:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 

def umrechnung():
        ergebnis=leu//5

from tkinter import *
 
top = Tk()
L1 = Label(top, text="Betrag in Leu")
L1.pack(side=LEFT)
E1 = Entry(top, bd=5)
E1.pack(side=RIGHT)
 
top.mainloop()

Das erscheint wie folgt:

„padx = 10“ schafft eine Rahmen von jeweils 10 Pixel links und rechts vom z.B. Button, „pady = 5″schafft eine Rahmen von jeweils 5 Pixel oben und unten vom z.B. Button.


#!/usr/bin/python
# -*- coding: UTF-8 -*-
 

def umrechnung():
        ergebnis=leu//5

from tkinter import *
 
top = Tk()
L1 = Label(top, text="Betrag in Leu")
L1.pack(side=LEFT, pady=5, padx=5)
E1 = Entry(top, bd=3)
E1.pack(side=RIGHT, padx=5, pady=5)
 
top.mainloop()