python如何使用tkinter实现透明窗体上绘制随机出现的小球
短信预约 -IT技能 免费直播动态提醒
这篇文章主要介绍了python如何使用tkinter实现透明窗体上绘制随机出现的小球,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
一、画个大球看看
(一)核心代码
在on_resize函数内部增加如下画圆的代码
canvas.create_oval(100, 100, 200, 200, outline='yellow', # 边框颜色 fill='pink', # 填充颜色 width=4 # 边框宽度 )
运行效果如下:
嘻嘻,是不是觉得有点意思。
好吧,后续我会分享这部分的完整代码给各位,希望大家不是拿来主义,能点点赞、关注一下我啊。
二、让小球随机运动起来
(一)核心函数
def create_ball(canvas,tk): # tkinter绘图采用屏幕坐标系,原点在左上角,x从左往右递增,y从上往下递增 # 在绘图区域内,随机产生当前球的圆心的x坐标和y坐标,用于制定出现的位置 xpos = randint(10, int(tk.winfo_width())) ypos = randint(10, int(tk.winfo_height())) # 随机产生表示当前球的大小,也就是半径长度 radius = randint(40, 70) # 通过lambda表达式创建函数对象r,每次调用r()都会产生0~255之间的数字 r = lambda: randint(0, 255) # 三次调用的数字取前两位,用十六进制数方式存储到self.color里,作为球的颜色 # RRGGBB,前2是红色,中2是绿色,后2是蓝色,最小是0,最大是F # 如全黑#000000 全白#FFFFFF 全红#FF0000 color = "#%02x%02x%02x" % (r(), r(), r()) # canvas.create_oval可以绘制一个圆 # 但是需要传入圆的左、上、右、下四个坐标 # 所以我们先产生4个坐标,通过这个四个坐标,绘制圆的大小 # 左坐标=x坐标-半径 x1 = xpos - radius # 上坐标=y坐标-半径 y1 = ypos - radius # 右坐标=x坐标+半径 x2 = xpos + radius # 下坐标=y坐标+半径 y2 = ypos + radius # 通过canvas.create_oval()方法绘出整个圆,填充色和轮廓色分别是self.color生成的颜色 canvas.delete('ball') ball = canvas.create_oval(x1, y1, x2, y2, fill=color, outline=color,tag='ball') # canvas.addtag_all('t5') print(x1,y1,x2,y2,color,radius) canvas.after(1000, create_ball,canvas,tk)
(二)运行效果
随机的小球运动效果就出来了。
三、更多参数的优化
(一)去掉标题栏
tk.overrideredirect(1)
(二)置顶显示
tk.wm_attributes("-topmost", 1)
(三)把旁边的白边去掉
canvas.config(highlightthickness=0)
呵呵,窗体最后就变成光秃秃的了。
也许按需使用会更好!!
(四)运行效果
呵呵,什么都没有了,只剩下随机的小球还在界面上显示。
Python主要用来做什么
Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。
感谢你能够认真阅读完这篇文章,希望小编分享的“python如何使用tkinter实现透明窗体上绘制随机出现的小球”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网行业资讯频道,更多相关知识等着你来学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341