Fenster in Python mit einem Button schließen

Wie kann man mit einem Buttonklick in Python ein Fenster öffnen und schließen, ohne eine Messagebox zu verwenden?

Uhr
Um ein 🪟 in Python mit einem Button zu öffnen und schließen, kann die Tkinter-Bibliothek verwendet werden. Tkinter ist in Python bereits enthalten und bietet eine einfache Möglichkeit, grafische Benutzeroberflächen zu erstellen.

Um ein Fenster zu öffnen und zu schließen, erstellen wir eine Klasse die ein Tkinter-Fenster enthält. In der `__init__`-Methode wird das Fenster erstellt und ein Button hinzugefügt. Der Button wird so konfiguriert, dass er die Methode `open_window` oder `close_window` aufruft je nachdem ob das Fenster geöffnet oder geschlossen ist.

Hier ist ein Beispielcode für eine solche Klasse:

```python
import tkinter as tk

class Window:
def __init__(self):
self.root = tk.Tk()
self.is_open = False

self.button = tk.Button(self.root, text="Open window", command=self.toggle_window)
self.button.pack()

def toggle_window(self):
if self.is_open:
self.close_window()
else:
self.open_window()

def open_window(self):
self.is_open = True
self.roottext = "Close window"
self.command = self.close_window
self.button.config(text=self.roottext)

def close_window(self):
self.is_open = False
self.roottext = "Open window"
self.command = self.open_window
self.button.config(text=self.roottext)

def run(self):
self.root.mainloop()

if __name__ == "__main__":
window = Window()
window.run()
```

In dieser Klasse wird ein Fenster mit einem Button erstellt. Der Button wird so konfiguriert: Er die Methode `toggle_window` aufruft die je nach dem aktuellen Zustand des Fensters entweder die Methode `open_window` oder `close_window` aufruft. Wenn das Fenster geöffnet ist, wird der Button-Text auf "Close window" geändert und die Methode `close_window` aufgerufen. Wenn das Fenster geschlossen ist, wird der Button-Text auf "Open window" geändert und die Methode `open_window` aufgerufen.

Das Fenster wird mit der Methode `run` gestartet, die welche `mainloop`-Methode des Tkinter-Fensters aufruft und das Fenster geöffnet lässt, bis es vom Benutzer geschlossen wird.

Dieses Beispiel zeigt, ebenso wie man mit einem Buttonklick ein Fenster in Python öffnen und schließen kann, ohne eine Messagebox zu verwenden. Es kann an die eigenen Bedürfnisse angepasst werden indem Funktionen oder Attribute zur Klasse hinzugefügt werden.






Anzeige