利用Tkinter设计一个小Gui程序(附pyinstaller打包)

Tkinter简单介绍

是绑定了 Python 的 Tk GUI 工具集 ,就是Python 包装的Tcl代码,通过内嵌在 Python 解释器内部的 Tcl 解释器实现, Tkinter

的调用转换成 Tcl 命令,然后交给 Tcl 解释器进行解释,实现 Python 的 GUI 界面。

对比Tk和其它语言的绑定,比如 PerlTk ,是直接由 Tk 中的 C 库实现的。

优点:

历史最悠久, Python 事实上的标准 GUI , Python 中使用 Tk GUI 工具集的标准接口,已经包括在标准的 Python Windows 安

装中,著名的 IDLE 就是使用 Tkinter 实现 GUI 的创建的 GUI 简单,学起来和用起来也简单。

附维基百科上的简介:https://en.wikipedia.org/wiki/Tkinter

创建窗口

from tkinter import *

#创建窗口
window=Tk()
#创建标题
window.title("你喜欢我吗?")
#窗口大小和位置(中间为字母x)
window.geometry("380x420")
window.geometry("+500+240")
#window.geometry("380x420+500+240")

#显示窗口(消息循环)
window.mainloop()

 

添加label和button控件



#标签控件
label=Label(window,text="hey,小姐姐",font=("微软雅黑",15),fg="red")
#定位    网格布局 pack包 place位置
label.grid(row=0,column=0)

label1=Label(window,text="喜欢我吗?",font=("微软雅黑",30))
#对其方式sticky
label1.grid(row=1,column=1,sticky=E)

#显示文件
photo=PhotoImage(file="cc.png")
imageLabel=Label(window,image=photo)
imageLabel.grid(row=2,columnspan=2)



#按钮控件
but=Button(window,text="喜欢",height=2,width=15,command=Love)
but.grid(row=3,column=0,sticky=W)

but1=Button(window,text="不喜欢",command=unLove)
but1.grid(row=3,column=1,sticky=E)

当点击喜欢button时

def Love():
"""点击确定时关闭所有窗口,点击关闭窗口按钮无反应"""
    #顶级窗口(和messagebox有区别)
    love=Toplevel(window)
    love.geometry('300x180+520+260')
    love.title("好巧,我也是")
    label=Label(love,text="好巧,我也是",font=("微软雅黑",20))
    label.pack()
    label1=Label(love,text="加个微信吧~~",font=("微软雅黑",20))
    label1.pack()
    entry=Entry(love,font=("微软雅黑",18))
    entry.pack()
    btn=Button(love,text="确定",width=10,height=2,command=closeAllWindow)
    btn.pack()
    love.protocol("WM_DELETE_WINDOW",closelove)

def closelove():
    return 

当点击不喜欢button时

def closeunLove():
    #messagebox.showinfo("再考虑一下","再考虑一下")
    unLove()

def unLove():
"""点击不喜欢时,弹出的窗口。点击好的,退出这个窗口,点击关闭,重新弹出一个窗口"""
    unlove=Toplevel(window)
    unlove.geometry('300x100+520+260')
    unlove.title("再考虑考虑")
    label=Label(unlove,text="再考虑考虑",font=("微软雅黑",25))
    label.pack()
    btn=Button(unlove,text="好的",width=10,height=2,command=unlove.destroy)
    btn.pack()
    unlove.protocol("WM_DELETE_WINDOW",closeunLove)

当点击关闭窗口时不让退出

from tkinter import messagebox

#用户关闭窗口触发的事件(第一个删除窗口,第二个为函数名,即过程)
window.protocol('WM_DELETE_WINDOW',closeWindow)

def closeWindow():
    messagebox.showinfo(title="警告",message="好好回答,不许关闭")

pyinstaller的应用

  1. 在cmd里面通过pip安装pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyinstaller (使用国内的镜像快很多)
  2. 按住shift键,右键点击在此处打开命令窗口
  3. 使用命令pyinstaller -F xxx.py打包成.exe文件
  4. 想去掉黑窗口则输入pyinstaller -F -w  xxx.py
  5. 想修改图标则输入pyinstaller  -F -i xx.ico  xxx.py
  6. 图标的类型是ico类型,可以在www.bitbug.com转换成ico图形,路径什么的最好没有中文,否则易出现问题

 

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
使用pyinstaller打包gui界面的方法如下: 1. 确保已经安装好了pyinstaller库。 2. 打开命令行工具,进入到你的GUI界面的代码所在的目录。 3. 输入以下命令:pyinstaller -i 1.ico -F -w --upx C:\Users\Ysx\Desktop\upx394w dealUI.py。其中,1.ico是你的图标文件,dealUI.py是你的GUI界面的入口文件。这个命令将会把你的GUI界面打包一个可执行文件。 4. 执行完以上命令后,pyinstaller将会生成一个dist文件夹,里面包含了你的可执行文件和所需的依赖文件。 5. 如果想要定制可执行文件的图标,可以将你的图标文件命名为z.ico,并执行以下命令:pyinstaller -i z.ico -F -w --upx upx394w dealUI.py。 6. 最终,你可以在dist文件夹中找到你的可执行文件,双击运行即可。如果有任何问题,可以联系pyinstaller官方或相关论坛进行咨询。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Pyinstaller打包Tkinter创建GUI 应用程序](https://blog.csdn.net/u012555556/article/details/80970598)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [pyinstaller打包程序图形界面版](https://download.csdn.net/download/zjp1981/10910260)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值