Parent temporär deaktivieren

Fragen zu Tkinter.
Antworten
we1303
User
Beiträge: 14
Registriert: Montag 22. März 2021, 21:51

Hallo,

versuche jetzt Python/Tkinter zu lernen, ging bislang gut, lesen bildet. Drohe aber jetzt zu scheitern:

Habe ein Treeview gebaut mit Scrollbalken, auf dem Scroolbar sollen die darunterliegenden Felder geändert werden können. Auch das ist okay. Der Rest des untenliegenden (parent) Treeview ist aber durch die Maus weiter erreichbar, ich kann also während des Entry-Edits andere Datensätze selektieren und mehrere (!!) zum Edit öffnen.

Ich kann den Frame für das Entry-Edit-Fenster auf die Größe von Treeview vergrößern, erhalte dann aber ein großes graues Feld und die Liste wird unsichtbar. root.transparentcolor funktioniert auch nicht, da außer dem Edit-Entry ALLE darunterliegenden Fenster der App - also auch Treeview - transparent werden.

Ein Deaktivieren der Eingabe im parent-Fenster Treeview habe ich nicht gefunden. Was kann ich machen?

Schon mal vielen Dank für gute Vorschläge
we
we1303
User
Beiträge: 14
Registriert: Montag 22. März 2021, 21:51

Danke, hatte das Prob mit .grab_set() und .grab_release() lösen können. Stichwort ist wohl ein modaler Dialog, bloß hier ohne eigenes sichtbares Fenster.

Das Prob modaler Dialog bleibt: Toplevel() öffnet einen solchen, aber die Icons zum Maximieren und Iconisieren stören, weil Fenster dann zu groß. Die Fenster bei simpledialog oder filedialog sind auch modal (auch ohne die unerwünschten Icons), habe aber kein solches Fenster gefunden, dass ich selbst mit Inhalt füllen bzw. besser steuern kann.
Sirius3
User
Beiträge: 17703
Registriert: Sonntag 21. Oktober 2012, 17:20

Du suchst `toplevel.resizeable(0,0)`.
we1303
User
Beiträge: 14
Registriert: Montag 22. März 2021, 21:51

Vielen Dank für die Antwort.

Jein, .resizeable(0,0) verhindert das Maximieren, das entsprechende Icon aber bleibt deaktiviert bestehen. Einen Schalter für iconize (?) habe ich auch nicht (wieder)gefunden, denn auch das Icon stört. Trotzdem danke für die Mühe
we1303
User
Beiträge: 14
Registriert: Montag 22. März 2021, 21:51

Nachtrag:

Das vorgeschlagene '.resizeable(0.0)' verhindert das Größe ändern mit der Maus. Die Icons werden ausgeblendet mit '.attributes('-toolwindow', True)'. Die Optik des close icons ist unkonventionell und leider funktioniert es nur mit Tk(), nicht mit Toplevel(). Scheint aber kein Prob zu sein.
Antworten