程序员的浪漫——教你表白,让你的女神不会拒绝
自古逢秋悲寂寥,我言秋日胜春朝。
晴空一鹤排云上,便引诗情到碧霄。——刘禹锡 《秋词》
自古以来每逢秋天都会感到悲凉寂寥,可也有人反映其道而行,如刘禹锡认为秋天要胜过春天,这让我不禁想到去年朋友圈里刷屏的‘秋天的第一杯奶茶’,看到那些人秀恩爱,你是不是心里有一万只草泥马奔驰而过,今天教你一招让你的女神无法拒绝
先看一看效果图
进入正题
我的开发环境:python3.8
计算机系统:Windows10
开发工具:pycharm
要用的包:tkinter、random
图片放在这要用自取
开始写代码
1 | import tkinter as tk |
win.geometry(‘800x500+350+150’)里的x是字母x,前两个数据是窗口大小,后两个数据是窗口位置,运行起来就会出现一个空白的窗口
将页面的内容填充一下
1 | canvas = tk.Canvas(win, width=600, height=300) |
这里注意,第三个拒绝按钮不要再后面直接接.place(),因为我们要对拒绝按钮进行一些处理,如果加.place()的话就不是单纯的按钮了
运行会效果如下
这里有一个问题,导入图片之后经常会有这样的问题:couldn’t recognize data in image file “./love.png”
说无法识别图像文件的数据,我看网上有很多人说只支持gif格式的,我是这样解决的,我用PS打开图片再导出就可以了,格式亲测jpg、png、gif都可以,没有PS的可以尝试一下其他的图片工具
接下给按钮添加功能
先写考虑按钮
1 | def consider(): |
这里用的是之前导入的包:import tkinter.messagebox as mb 是用来弹出提示框的
拒绝按钮的功能
1 | def refuse(): |
点击后会随机出现在界面任意位置,并且内容也会发生改变
也有进阶的,给按钮添加鼠标监听事件,只要鼠标移动到按钮上就会触发,按钮会随机出现在界面任意位置
1 | def a(eve): |
同意按钮功能
1 | def agree(): |
点击同意后会再次出现一个界面,在这个界面里放上先要添加的东西,原理的主页面是一样的,这里图片导入的方式我用了两种,在主页面我是用的画布方式,将图片添加到画布上,在同意的子页面我是添加在了标签上,至于这两种方式有什么区别,感兴趣的同学可以去查一下相关的资料。
大致的功能写好了还有一些小功能没有实现,接下来在完善完善
点击关闭键关不掉的功能
1 | def close(): |
将界面的大小固定
1 | win.resizable(False, False) |
菜单栏
1 | def do_job(): |
完整代码如下
1 | import tkinter as tk |
代码写好了,该怎么发给女神呢,女神电脑上又没有python环境,这里可以用pyinstaller 来将代码打包成exe文件 安装 pip install pyinstaller 安装后在你想保存的文件夹打开cmd命令板
输入pyinstaller -F 代码路径 -w
这里的w是小写的
-F 表示生成单个可执行文件
-w 表示去掉控制台窗口,这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧!
-i 表示可执行文件的图标 想要添加图标可以在后面路径,后缀名为.ico
打包成功是这样的
我们的可执行文件解放在dist文件夹下,现在你直接运行是会报错的,我们要图片放到exe文件的同级文件夹下就行了,注意图片名一定要和你写代码时的图片名相同,弄好之后就可以打包发给你女神了
不说了,天台挺凉快的