i

Dialogfenster

Hinweis

Tkinter stellt für zahlreiche Standarddialoge Hilfsmittel bereit. Wir betrachten hier nur einen dieser Standarddialoge. Weitere Gestaltungsmöglichkeiten musst du in einem Nachschlagewerk recherchieren.

Ein Datei-Dialog

Wir betrachten eine grafische Benutzeroberfläche mit einem Textfeld.

Anwendungsfenster

Wenn der Benutzer die Schaltfläche mit der Beschriftung "speichern" anklickt, dann soll sich ein Dialogfenster zum Speichern öffnen und den Benutzer bei der Festlegung des Speicherorts und Dateinamens unterstützen.

Anwendungsfenster

Entsprechend soll der Benutzer beim Laden einer Datei unterstützt werden, wenn er die Schaltfläche mit der Beschriftung "laden" anklickt.

Das folgende Programm zeigt, wie man solche Dialogfenster auf einfache Weise erzeugen kann.

from tkinter import *
# Ereignisbehandlung

def buttonLadenClick():
datei = filedialog.askopenfile()
textfeld.delete('1.0', 'end')
if datei:
textfeld.insert(1.0, datei.read())
datei.close()

def buttonSpeichernClick():
datei = filedialog.asksaveasfile()
if datei:
datei.write(textfeld.get('1.0', 'end'))
datei.close()

Fenster

tkFenster = Tk()
tkFenster.title('BMI')
tkFenster.geometry('300x240')

Text

textfeld = Text(master=tkFenster, width=32, height=12, wrap='word')
textfeld.place(x=8, y=8)
scrollbar = Scrollbar(master=tkFenster)
scrollbar.place(x=280, y=8, width=10, height=197)
textfeld.config(yscrollcommand=scrollbar.set)
scrollbar.config(command=textfeld.yview)

Programm laden

buttonLaden = Button(master=tkFenster, text='laden', command=buttonLadenClick)
buttonLaden.place(x=8, y=215, width=90, height=20)

Programm speichern

buttonSpeichern = Button(master=tkFenster, text='speichern', command=buttonSpeichernClick)
buttonSpeichern.place(x=106, y=215, width=90, height=22)

Aktivierung des Fensters

tkFenster.mainloop()

Aufgabe 1

Teste das Programm.

Suche

v
5.1.4.13.3
www.inf-schule.de/software/gui/entwicklung_tkinter/fensterdialoge/dialogfenster

Rückmeldung geben