Voraussetzungen: Einführung in tkinter 

Python bietet mehrere Optionen für die Entwicklung der grafischen Benutzeroberfläche (GUI). Von allen GUI-Methoden ist Tkinter die am häufigsten verwendete Methode. In diesem Artikel erfahren Sie anhand einer Schritt-für-Schritt-Anleitung, wie Sie mit Tkinter eine ToDo-GUI-Anwendung erstellen. 

So erstellen Sie einen tkinter: 

  • Modul importieren - tkinter
  • Erstellen Sie das Hauptfenster (Container)
  • Fügen Sie dem Hauptfenster eine beliebige Anzahl von Widgets hinzu.
  • Wenden Sie den Ereignisauslöser auf die Widgets an.

Die GUI würde wie folgt aussehen:



Erstellen wir eine GUI-basierte einfache ToDo-Anwendung, in der Sie die Aufgabe hinzufügen und löschen können.
 

Unten ist die Implementierung: 

from tkinter import *
 
from tkinter import messagebox
 
tasks_list = []
 
counter = 1
 
def inputError() :
     
    
    if enterTaskField.get() == "" :
         
        
        messagebox.showerror("Input Error")
         
        return 0
     
    return 1
 
def clear_taskNumberField() :
     
    
    taskNumberField.delete(0.0, END)
 
def clear_taskField() :
 
    
    enterTaskField.delete(0, END)
     
def insertTask():
 
    global counter
     
    
    value = inputError()
 
    
    if value == 0 :
        return
 
    
    
    content = enterTaskField.get() + "\n"
 
    
    tasks_list.append(content)
 
    
    
    TextArea.insert('end -1 chars', "[ " + str(counter) + " ] " + content)
 
    
    counter += 1
 
    
    clear_taskField()
 
def delete() :
     
    global counter
     
    
    if len(tasks_list) == 0 :
        messagebox.showerror("No task")
        return
 
    
    number = taskNumberField.get(1.0, END)
 
    
    
    if number == "\n" :
        messagebox.showerror("input error")
        return
     
    else :
        task_no = int(number)
 
    
    
    clear_taskNumberField()
     
    
    tasks_list.pop(task_no - 1)
 
    
    counter -= 1
     
    
    TextArea.delete(1.0, END)
 
    
    for i in range(len(tasks_list)) :
        TextArea.insert('end -1 chars', "[ " + str(i + 1) + " ] " + tasks_list[i])
     
 
if __name__ == "__main__" :
 
    
    gui = Tk()
 
    
    gui.configure(background = "light green")
 
    
    gui.title("ToDo App")
 
    
    gui.geometry("250x300")
 
    
    enterTask = Label(gui, text = "Enter Your Task", bg = "light green")
 
    
    
    enterTaskField = Entry(gui)
 
    
    
    
    Submit = Button(gui, text = "Submit", fg = "Black", bg = "Red", command = insertTask)
 
    
    
    
    TextArea = Text(gui, height = 5, width = 25, font = "lucida 13")
 
    
    taskNumber = Label(gui, text = "Delete Task Number", bg = "blue")
                        
    taskNumberField = Text(gui, height = 1, width = 2, font = "lucida 13")
 
    
    
    
    delete = Button(gui, text = "Delete", fg = "Black", bg = "Red", command = delete)
 
    
    
    
    Exit = Button(gui, text = "Exit", fg = "Black", bg = "Red", command = exit)
 
    
    
    
    enterTask.grid(row = 0, column = 2)
 
    
    enterTaskField.grid(row = 1, column = 2, ipadx = 50)
                        
    Submit.grid(row = 2, column = 2)
         
    
    
    TextArea.grid(row = 3, column = 2, padx = 10, sticky = W)
                        
    taskNumber.grid(row = 4, column = 2, pady = 5)
                        
    taskNumberField.grid(row = 5, column = 2)
 
    
    
    delete.grid(row = 6, column = 2, pady = 5)
                        
    Exit.grid(row = 7, column = 2)
 
    
    gui.mainloop()

Ausgabe: