Ich versuche ein Programm zu erstellen, das bei einer Reihe von Benutzereingaben eine Funktion ausführt. Einige der Benutzereingaben sind nur unter bestimmten Umständen erforderlich, und ich möchte, wenn möglich, nur die Eingabefelder und Beschriftungen für diese Eingabewerte anzeigen, wenn eine Prüfschaltfläche ausgewählt wird, die angibt, dass die Umstände, die diese Eingaben erfordern, vorhanden sind. Was ich nicht weiß, wie zu tun ist:Wie Widgets in Tkinter ein-/ausblenden?
Setzen Sie die Labels und Eingabefelder, die ich zwischen Zeilen hinzufügen, die bereits vorhanden sind.
"Verbergen" Sie die Labels und Eingabefelder, wenn die Check-Schaltfläche deaktiviert ist, ohne dass sie erneut angezeigt werden, ohne bereits eingegebene Daten zu verlieren, wenn die Check-Schaltfläche erneut ausgewählt wird.
"Anzeigen" die gleichen Labels und Eingabefelder, die zuvor "ausgeblendet" wurden, wenn die Checkbutton-Schaltfläche erneut ausgewählt wird, nachdem sie zuvor festgelegt wurde.
Ich weiß nicht, ob so etwas überhaupt möglich ist, aber wenn nicht, lass es mich wissen. Mir ist auch bewusst, dass ich einfach die entsprechenden Eingabefelder "state
" auf DISABLED
setzen könnte, während die Check-Schaltfläche deaktiviert ist, aber ich würde es vorziehen, wenn die Boxen nicht erscheinen würden, damit ihre Anwesenheit nicht verwirrte Benutzer verwirrt die Umstände, unter denen die zusätzlichen Eingaben notwendig sind.
Wenn dies relevant ist, verwende ich Python 2.7.9, Anaconda 2.2.0 (64-Bit) und Tkinter Version 81008 auf Windows 10 Pro. Fühlen Sie sich frei, weitere Informationen anzufordern, wenn ich etwas ausgelassen habe, das nützlich wäre zu wissen. Vielen Dank im Voraus für jede Hilfe, die Sie leisten können.
In Ordnung, macht Sinn soweit. Wie würde ich die entfernten Widgets wieder in das Grid einfügen? Würde ich die '.grid()' Methode für sie aufrufen? – train1855
Ja, siehe Beispiel.Ich denke, es gibt ähnliche Methoden für andere Grid-Manager wie "pack". – Goyo