您的位置首页百科问答

教你用Python设置Tkinter(TK)窗口全屏最大化

教你用Python设置Tkinter(TK)窗口全屏最大化

的有关信息介绍如下:

教你用Python设置Tkinter(TK)窗口全屏最大化

很多小伙伴在初学Python Tk的时候,总是会遇到这样的问题——怎么设置窗口最大化(全屏)?

下面小编就来教大家怎么设置Tk窗口全屏。

我们先写出创建Tk窗口的代码。

#-*- coding:utf-8 -*-

import tkinter

#导入tk包,这里小编用的是python3,如果小伙伴用的是python2,把代码中的tkinter更换成Tkinter即可,否则会报错哦

win = tkinter.Tk()

win.mainloop()

开始写之前,我们来理下思路。

如果小伙伴知道怎么用geometry方法设置窗口大小的话,就很简单了。

我们只需要获得当前屏幕大小即可(或者说是,分辨率)。

这里Tk提供了这样两个方法。

winfo_screenwidth和winfo_screenheight

从字面上也大概可以理解:width = 宽,winfo_screenwidth可以获得当前屏幕的宽度,height = 高,winfo_screenheight则是获得当前屏幕的高度。

我们其实可以先把当前屏幕大小(分辨率)打印出来。

print("当前屏幕的屏幕的宽度为%dpx" %(win.winfo_screenwidth()))

print("当前屏幕的屏幕的高度为%dpx" %(win.winfo_screenheight()))

再去看看屏幕分辨率,确实,小编这里的屏幕分辨率确实是1920x1080

不知道怎么看分辨率的小伙伴看这里:

windows 7以上:右键桌面空白处,屏幕分辨率

XP:右键桌面空白处,属性(后面自己找,很好找)

OK,我们得到当前屏幕的分辨率之后,我们只需要把窗口大小设置一下即可。

我们要用到的是Tk对象提供的geometry方法,从字面上理解为几何,没错,这确实是和窗口几何有关。

使用方法很简单,我们只要把我们要设置的宽度和高度转成字符串传给geometry即可。

w =win.winfo_screenwidth()

h = win.winfo_screenheight()

win.geometry("%dx%d" %(w,h))

#字符串形式为"宽度x高度"

此时我们可以看到tk窗口全屏了。但是有一个问题就是,我们依旧可以看到任务栏,这样其实算伪全屏吧,我们想要真正的全屏,还要把任务栏覆盖掉,这时要怎么办?

这里要说一个tk对象提供的方法——attributes方法,attributes方法用于修改窗口属性。

我们需要置顶窗口覆盖掉所有其他窗口,attributes方法中,置顶窗口的属性名为-topmost,其用法是attributes(属性名,属性值)

我们加入代码win.attributes("-topmost",True)即可置顶窗口,实现真正的全屏。

此时运行看看,是不是真正全屏了?

#-*- coding:utf-8 -*-

import tkinter

win = tkinter.Tk()

w =win.winfo_screenwidth()

h = win.winfo_screenheight()

win.geometry("%dx%d" %(w,h))

win.attributes("-topmost",True)

win.mainloop()

怎么关注?

在经验的右上角小编头像旁边点击关注,如图。

怎么点赞?

请在经验左侧点赞,如图。

怎么投票?

在经验的下方点击投票,如图。

如果觉得小编写的还不错,可以动动鼠标把它分享给您的朋友。

如何分享,鼠标移动到右下角第一个按钮上,在弹出的选项中进行分享,如图。

不尽感激。