代码需要模块
- 代码运行用到tkinter,
- 打包exe用到模块pyinstaller
效果展示
- 只有点击了 ‘喜欢’ 并且点击 ‘确定’ 程序才会正常关闭
- tjinker 模块python3.0版本以上自代,无需安装
- GUI python自动图形化界面模块
代码实现
代码中的坐标位置设置,更加自己调整设置,屏幕尺寸大小不同,会导致效果有偏差
from tkinter import *
from tkinter import messagebox
def closeWindwo():
messagebox.showinfo(title='警告', message='不许关闭,好好回答')
return
def closeallwindow():
root.destroy()
def Love():
love = Toplevel(root)
love.geometry('300x70+545+200')
love.title('好巧,我也是')
label = Label(love, text='好巧,我也是', font=('隶书', 15))
label.pack()
btn = Button(love, text='确定', width=8, heigh=1, command=closeallwindow)
btn.pack()
love.protocol('WM_DELETE_WINDOW', closelove)
def closelove():
messagebox.showinfo(title='小姐姐', message='不在考虑一下吗')
return
def Loveno():
nolove = Toplevel(root)
nolove.geometry('300x70+545+200')
nolove.title('么么哒')
label = Label(nolove, text='小姐姐,再考虑一下呗', font=('隶书', 15))
label.pack()
btn = Button(nolove, text='确定', width=8, heigh=1, command=nolove.destroy)
btn.pack()
nolove.protocol('WM_DELETE_WINDOW', closenolove)
def closenolove():
Loveno()
root = Tk()
root.geometry('400x450+500+150')
root.resizable(width=False, height=False)
root.title('miss_you')
root.protocol('WM_DELETE_WINDOW', closeWindwo)
label = Label(root, text=' hey,小姐姐!', font=('华文行楷', 20))
label.grid(row=0, column=0, sticky=W)
label2 = Label(root, text='你喜欢我吗? ', font=('华文行楷', 25))
label2.grid(row=2, column=1, sticky=E)
photo = PhotoImage(file='abc.png')
image_label = Label(root, image=photo)
image_label.grid(row=3, columnspan=2)
button = Button(root, text='喜 欢', font=('微软雅黑', 15), width=8, heigh=1, command=Love)
button.grid(row=7, column=0, sticky=W)
button1 = Button(root, text='不喜欢', font=('微软雅黑', 15), width=8, heigh=1, command=Loveno)
button1.grid(row=7, column=1, sticky=E)
root.mainloop()
打包成exe文件可以脱离python环境在Windows下正常运行
- pyinstaller 打包程序
- ico格式图片生成
- 1,百度直接搜索icon进入官网直接搜索想要的图片,下载ico格式图片
- 2,随便格式的图片,在线生成ico格式图片
- 打包后文件效果,这种情况删除源码完全不影响程序运行
程序打包
1,安装pyinstaller
pip install pyinstaller (如果安装失败,用管理员权限安装)
2,打包程序
(1)下载ico图片,保存到和代码同一文件夹
(2)cd 到代码所在文件夹
(3)打包 pyinstaller -F -w -i F:\code\image.ico demo.py
-F 表示打包(F 大写)
-w 取消控制台显示(w 小写)
-i 有错误也继续执行(i 小写)
ico图片路径(绝对路径)
最后是代码名称
(4)如果程序里面有图片,需要将图片复制到exe文件同一级文件夹,否则程序无法正常运行