Tkinter
Zur Navigation springen
Zur Suche springen
Tkinter ist eine Grafikbibliothek für Python.
Beispielcode
Der folgende Beispiel-Quelltext zeigt, wie man mit Tkinter arbeiten kann.
Die Methoden linie, kreis, punkt, rechteck sind Hilfsmethoden, um den Aufruf zu erleichtern.
from tkinter import Canvas, Tk, mainloop
def linie(canvas, x1, y1, x2, y2, color):
linie_id = canvas.create_line(x1,y1,x2,y2,fill=color)
return linie_id
def punkt(canvas, x, y, color):
punkt_id = linie(canvas, x, y, x+1, y, color)
return punkt_id
def kreis(canvas,x,y, r, color):
kreis_id = canvas.create_oval(x-r,y-r,x+r,y+r, fill=color)
return kreis_id
def rechteck(canvas, x1, y1, x2, y2, color):
rechteck_id = canvas.create_rectangle(x1,y1,x2,y2,fill=color)
return rechteck_id
# Callback-Methode:
# Wird ausgefuehrt, wenn der Button geklickt wird.
def buttonGeklickt(event):
print("Button geklickt!")
leinwand.delete(kreisId)
for i in punkteIds:
leinwand.move(i, 0, -50)
# *** Hauptprogramm ***
# Groesse der Leinwand festlegen
leinwand_breite = 200
leinwand_hoehe = 200
# Vorbereitung der Grafik
master = Tk()
leinwand = Canvas(master,
width=leinwand_breite,
height=leinwand_hoehe)
leinwand.pack()
# festlegen, was passiert, wenn der Button geklickt wird.
leinwand.bind("<Button-1>", buttonGeklickt)
# Linie zeichnen
linieId = linie(leinwand, 20, 100, 180, 100, "blue")
# Punkte zeichnen
punkteIds = []
for x in range(1,19):
punktId = punkt(leinwand, x*10, 110, "black")
punkteIds.append(punktId)
# Rechteck zeichnen
rechteckId = rechteck(leinwand, 30,170,80,190, "green")
# Kreis zeichnen
kreisId = kreis(leinwand, 30,60, 20, "red")
# Beenden des Programms verhindern
mainloop()