python如何使用tkinter实现透明窗体

  介绍

小编给大家分享一下python如何使用tkinter实现透明窗体,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

一、基础说起

(一)实现最简单的窗体

得到tkinter  import  *      if  __name__ ==, & # 39; __main__ # 39;:      ,,,tk =, Tk ()   ,,,tk.geometry (& # 39; 500 x400 + 500 + 150 & # 39;)   ,,,tk.title(& # 39;有趣的透明窗体——开篇了! ! ! & # 39;)   ,,,canvas =,画布(tk)   ,,,canvas.pack(填补=,,扩大=Y)   ,,,tk.mainloop ()

太简单了,不详细说了,相信大家都看得懂。
效果:

 python如何使用tkinter实现透明窗体

二,好戏开始了

也许最有趣的透明窗体就是从这么简单的代码开始。

我们可以设置一个叫做透明色的颜色,然后让窗体帆布画一个矩形框,然后将这个矩形框的内色设置成透明色,那这个窗体不就透明了吗?

呵呵,是不是太简单了。
那我们就开始设置一下。

(一)把灰色设置成透明色

TRANSCOLOUR =, & # 39;灰色# 39;   tk.wm_attributes (& # 39; -transparentcolor& # 39;,, TRANSCOLOUR)

(二)放置一个矩形框在帆布上。

canvas.create_rectangle (0, 0, canvas.winfo_width (),, canvas.winfo_height(),,填补=TRANSCOLOUR,轮廓=TRANSCOLOUR)

(三)大家有发现变化吗?

得到tkinter  import  *      if  __name__ ==, & # 39; __main__ # 39;:   ,,,TRANSCOLOUR =, & # 39;灰色# 39;   ,,,tk =, Tk ()   ,,,tk.geometry (& # 39; 500 x400 + 500 + 150 & # 39;)   ,,,tk.title(& # 39;有趣的透明窗体——开篇了! ! ! & # 39;)      ,,,canvas =,画布(tk)   ,,,canvas.pack(填补=,,扩大=Y)      ,,,canvas.create_rectangle (0, 0, canvas.winfo_width (),, canvas.winfo_height(),,填补=TRANSCOLOUR,轮廓=TRANSCOLOUR)   ,,,tk.mainloop ()

发现,程序完全不鸟我的代码,还是原来的老样子。

但是逻辑没有错误啊,代码也没有报错啊,那到底哪里错了呢?

三,成功的背后总有残缺

不断摸索后,原来思路是对的,但是窗体很努力,它会不断的重复调用重画窗体的操作,也就是说在后面自动重画的过程中,程序调用默认的代码,把我设置的透明窗体覆盖了,所以,透明窗体不见了。

(一)让透明窗体不断重画的onsize函数

def  on_resize (evt):   ,,,tk.configure(宽度=evt.width高度=evt.height)   ,,,canvas.create_rectangle (0, 0, canvas.winfo_width (),, canvas.winfo_height(),,填补=TRANSCOLOUR,轮廓=TRANSCOLOUR)   ,,,印刷(canvas.winfo_width ())

(二)绑定onsize函数

tk.bind (& # 39; & lt; Configure> & # 39;,, on_resize)

(三)最终的效果

哈哈,效果出来了,真的透明的了,开心,高兴。

 python如何使用tkinter实现透明窗体

(四)录制了个动态看看

 python如何使用tkinter实现透明窗体

python的优点有哪些

1,简单易用,与C/c++、Java、c#等传统语言相比,python对代码格式的要求没有那么严格;2,python属于开源的,所有人都可以看到源代码,并且可以被移植在许多平台上使用;3,python面向对象,能够支持面向过程编程,也支持面向对象编程;4,python是一种解释性语言,python写的程序不需要编译成二进制代码,可以直接从源代码运行程序;5,python功能强大,拥有的模块众多,基本能够实现所有的常见功能。

以上是“python如何使用tkinter实现透明窗体”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

python如何使用tkinter实现透明窗体