Python tkinter中,怎么去除窗口的边框和标题栏?

 我来答
bdwisyou7d
推荐于2017-11-25 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1064万
展开全部
我唯一想到的办法就是你试试不用frame,而是用button作为父窗口。

另外relief 设置成FLAT, bd设置为0, 不显示标题的办法我也没有。

不过可以从win32的API上想办法。
获取窗口句柄可以用FindWindow来做到。获取windows的handle后。设置windows的style。
在dwStyle里将WS_CAPTION属性去掉。SetWindowLong这个函数应该有这个功能。
追问

谢谢,但我已经找到几乎完美的解决方案了,代码太长百度不让输入。见图:

追答
很不错!你很厉害。我试一下。
#python2.7
from Tkinter import *
class Application(Frame):
def __init__(self,master=None, *args, **kwargs):
Frame.__init__(self,master, *args, **kwargs)
self.grid()
self.createWidgets()
self.flag=True
self.transparent=False
self.top = self.winfo_toplevel()
def overturn(self):
self.top.update_idletasks()
self.top.overrideredirect(self.flag)
self.flag=not self.flag #switch

def createWidgets(self):
self.canvas = Canvas(self, bg='green')
self.canvas.pack()
self.flagButton = Button(self, text='try this', bg='green', command=self.overturn)
self.flagButton.pack()
app = Application()
app.master.title("sample application")
app.mainloop()

真的可以。我加了一句测试。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式