Seite 1 von 1
Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 07:22
von BerryBlue
Hallo erstmal und schonmal danke an alle, die sich Zeit nehmen, sich diese Frage durchzulesen.
Also, mein Problem ist, das ich auch nach intensiver Internetrecherche (schreibt man das so ^^ ) nicht herausgefunden habe, wie ich den maximieren Button abfangen kann und wie ich es verhindern kann, dass sich das fenster größer "ziehen" lässt.
Mit dem schliessem Button ist es ja ganz leicht, aber gibt es sowas auch für´s Maximieren ?
Danke für eure Hilfe und fürs durchlesen
MFG BerryBlue
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 09:17
von mutetella
Schau mal in der
Dokumentation unter <Configure>...
mutetella
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 09:28
von bfm
hallo
hier müsste deine Lösung zu finden sein:
http://www.tkdocs.com/tutorial/windows.html#wm
==> Resizing Behavior
mfg
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 09:43
von mutetella
@bfm
Wobei sich Dein Link darauf bezieht, wie man ein bestehendes Fenster selbst modifizieren kann, nicht wie man ein event, das vom Nutzer provoziert wird, abfängt.
mutetella
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 14:05
von BerryBlue
Vielen Dank für die schnellen Antworten
@Mutella: Kannst du mir das mal an einem beispiel erklären, denn iw. versteh ich das nicht, bzw. finde nicht das richtige
MFG BerryBlue
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 16:48
von mutetella
@BerryBlue
Irgendwo hast Du ja hinterlegt, wie groß das Fenster ist, ansonsten kannst Du das mit `winfo_width` und `winfo_height` auslesen. Nun bindest Du eine Funktion, die beim <Configure> event aufgerufen werden soll, mit der `bind` Methode an Dein Fenster. Diese Funktion vergleicht dann die hinterlegte Fenstergröße mit der Neuen, die wiederum im `event` hinterlegt ist. Das ganze könnte ungefähr so aussehen (
könnte, da ich noch nie was mit tkinter gemacht habe, vielleicht kann ja noch jemand anderes was dazu sagen):
Code: Alles auswählen
class AnyFrame(object):
def __init__(self, ....):
...
self.max_width, self.max_height = #irgendeine `winfo`-Methode, die die maximale window-Größe zurückgibt
self.bind('<Configure>', resize)
def resize(event):
if event.width, event.height == self.max_width, self.max_height:
print 'window has max size'
mutetella
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 18:27
von BlackJack
Ähm, kann man nicht einfach das verändern der Fenstergrösse komplett verbieten → `Tk.resizable()`. Ist vielleicht einfacher. Die Maximieren-Schaltfläche verschwindet dann automatisch weil sie auf so einem Fenster keinen Sinn macht.
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 18:42
von mutetella
BerryBlue hat geschrieben:... und wie ich es verhindern kann, dass sich das fenster größer "ziehen" lässt.
Wer lesen kann, ist mal wieder klar im Vorteil...

Ich dachte es geht darum, wie sich ein "Fenster maximieren" event handeln lässt...
mutetella
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 21:48
von BerryBlue
Vielen Dank für eure Hilfe, werde es alles mal ausprobieren und dann feedback geben
MFG BerryBlue
Re: Python maximieren abfangen
Verfasst: Montag 3. Februar 2014, 21:55
von BerryBlue
Edit:
Habe es jetzt mit
geschafft.
Vielen Dank für die vielen Antworten!
MFG BerryBlue