web-dev-qa-db-fra.com

fenêtre tkinter python maxim

Je veux initialiser une fenêtre comme maximisée, mais je ne peux pas savoir comment le faire. J'utilise python 3.3 et Tkinter 8.6 sur Windows 7. Je suppose que la réponse est juste ici: http://www.tcl.tk/man/tcl/TkCmd/wm.htm#m8 Mais. Je ne sais pas comment le saisir dans mon script python

De plus, je dois obtenir la largeur et la hauteur de la fenêtre (aussi bien maximisée que si l’utilisateur redimensionne ensuite), mais je suppose que je peux le trouver moi-même.

27

Si vous souhaitez définir l'attribut fullscreen sur True, il suffit de:

root = Tk()
root.attributes('-fullscreen', True)

Cependant, il ne montre pas la barre de titre. Si vous voulez le garder visible, vous pouvez redimensionner l'élément Tk avec la méthode geometry():

root = Tk()
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
root.geometry("%dx%d+0+0" % (w, h))

Avec winfo_width() et winfo_height(), vous pouvez obtenir la largeur et la hauteur ou la fenêtre, et vous pouvez également lier un gestionnaire d'événements à l'événement <Configure>:

def resize(event):
    print("New size is: {}x{}".format(event.width, event.height))

root.bind("<Configure>", resize)
30
A. Rodas

Vous pouvez le faire en appelant

root.state('zoomed')
44
kaboom

Pour afficher la fenêtre agrandie avec la barre de titre, utilisez l'attribut 'zoomé'

root = Tk()
root.attributes('-zoomed', True)
23
azeeman

J'ai trouvé ceci sur un autre site:

    import Tkinter

    MyRoot = Tkinter.Tk()
    MyRoot.state("zoomed")

    MyRoot.mainloop()

Cela a résolu mon problème.

1
rpecas

Le plus pythonique est "root.wm_state('zoomed')", comme mentionné par @ J.F.Sebastian

1
splinter