推荐几个学习网址:https://www.cnblogs.com/shwee/p/9427975.html

https://cloud.tencent.com/developer/section/1372347#stage-100040129

https://docs.python.org/3/library/tkinter.html

一、源代码

 import itchat
import requests
import tkinter
from tkinter import messagebox def func(self):
cont = text2.get(1.0, 'end').replace('\n', '')
if len(cont) == 0:
messagebox.showinfo("错误", "不能发送空消息")
return
else:
try:
req = requests.get('http://i.itpk.cn/api.php', params={'question': cont})
text1.config(state='normal')
text1.insert(tkinter.INSERT, '我: ' + cont + '\n')
text1.config(state='disabled')
text2.delete('1.0', 'end')
text1.config(state='normal')
text1.insert(tkinter.INSERT, '夏莉: ' + req.text + '\n')
text1.config(state='disabled')
except:
messagebox.showinfo("错误", "发送失败")
return def enterkeyfunc(event):
if event.keycode == 13:
func(event) def mouseenterfunc(event):
button1['bg'] = 'green' def mouseleavefunc(event):
button1['bg'] = 'white' win = tkinter.Tk()
win.title("机器人夏莉")
# 宽度x高度+距离屏幕横向400+纵向100
win.geometry("400x500+400+100")
# 禁止最大化
win.wm_resizable(False, False) text1 = tkinter.Text(win, height=26, bg='#e6f1f1')
text2 = tkinter.Text(win, height=9, bg='white')
button1 = tkinter.Button(win, text="发送(S)", width=8, height=1) text1.pack(anchor=tkinter.N)
text2.pack(anchor=tkinter.CENTER)
button1.pack(anchor=tkinter.SE)
text1.config(state='disabled') text2.focus() # 绑定事件
button1.bind("<Button-1>", func)
button1.bind("<Enter>", mouseenterfunc)
button1.bind("<Leave>", mouseleavefunc)
text2.bind("<Key>", enterkeyfunc) win.mainloop()

二、运行结果:

三、打包exe

1.安装pyinstaller

  pip install pyinstaller

2.打包python文件

  pyinstaller -F -w xxx.py

  注:使用-F会在当前目录下的dist文件夹生成一个独立的exe文件,而使用-D(默认选项)则会在当前目录下的dist文件夹生成一个文件夹存放exe以及所有依赖文件。当py文件有窗体时使用-w,在windows下不会显示控制台,-w在*NIX系统里会被忽略。

  参照:https://www.cnblogs.com/pcat/p/8463939.html

四、打包后的exe,下载点击可直接 运行(python>打包程序>RBoot.exe)

链接:https://pan.baidu.com/s/1DqjnZVTgBPSER6v5uGI6mQ 
提取码:0kz3 
注:若链接失效请留言,单独发你哦!

python之GUI编程-tkinter学习的更多相关文章

  1. Python之GUI编程(Tkinter))

    不足之处,还请海涵,请指出不足.本人发布过的文章,会不断更改,力求减少错误信息. 一.重要放在开头:模块 如出现这种错误 ModuleNotFoundError: No module named 'n ...

  2. python大法好——ython GUI编程(Tkinter)

    Python GUI编程(Tkinter) Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的 ...

  3. Python GUI编程(Tkinter) windows界面开发

    Python实现GUI简单的来说可以调用Tkinter库,这样一般的需求都可以实现,显示简单的windows窗口代码如下: python_gui.py 1 #!C:\Python27\python.e ...

  4. Python:GUI库tkinter(一)

    学习自: Python GUI 编程(Tkinter) | 菜鸟教程 TkDocs_官方文档 1.几个常用的Python GUI库 tkinter:Python的标准Tk GUI工具包的接口. wxP ...

  5. Python的GUI编程(TK)

    TK在大多数 Unix平台.Windows平台和Macintosh系统都是预装好的,TKinter 模块是 Tk GUI 套件的标准Python接口.可实现Python的GUI编程. Tkinter模 ...

  6. GUI编程(Tkinter) 笔记分享

    Python GUI编程(Tkinter) Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的 ...

  7. Python:GUI库tkinter(三)

    这一章是对前两章的总结: Python:GUI库tkinter(一) Python:GUI库tkinter(二) 前两章是对控件的介绍,第一章可以知道各控件使用时的具体参数,第二章以具体的例子展示了每 ...

  8. Python GUI编程--Tkinter

    今天看到了GUI编程,书上推荐用wxPython,去官网上看了看,发现Windows的最高支持到2.7,我用的是3.4版本,咋办,用自带的库--Tkinter呗,它是Python的默认GUI库,几乎是 ...

  9. Python:GUI之tkinter学习笔记1控件的介绍及使用

    相关内容: tkinter的使用 1.模块的导入 2.使用 3.控件介绍 Tk Button Label Frame Toplevel Menu Menubutton Canvas Entry Mes ...

随机推荐

  1. Linux监控命令之==>sar

    一.使用说明 sar 是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况.磁盘I/O.CPU效率.内存使用状况.进程活动及 ...

  2. 中国MOOC_零基础学Java语言_第2周 判断_1时间换算

    第2周编程题 查看帮助 返回   第2周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截 ...

  3. P站图片下载工具。

    下载 Pixiv 的图片比较麻烦,就做了这么个东西. 主要就是用 HttpWebRequest HttpWebResponse 下载了网页的 html 代码然后截取里面的内容.代码上传到了文件里. p ...

  4. excel 导入导出测试点

    目前,为方便操作,很多系统都会增加批量导入导出的功能.文件导入导出一般格式都是excel.由于用户直接在excel在填写内容,无法控制填写的格 式,加上excel解析比较困难,所以一般涉及到excel ...

  5. 【ABAP系列】SAP ABAP BDC_OKCODE 解释

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP BDC_OKC ...

  6. 应用安全 - 无文件式攻击 - 潜伏型攻击 - MBR - 汇总 (2019-11-29 15:57)

    Petya勒索病毒 Date

  7. Arm-linux-gcc-4.3.2安装步骤 (转)

    http://blog.chinaunix.net/uid-26119896-id-3302233.html 安装交叉编译工具链: 1.首先以root用户登入 2.复制arm-linux-gcc-4. ...

  8. 递归法求组合数C(m,n)

    假设这样一个数组: 1 2 3 4 5 n=5 若 m=3 也就是要求C(3,5) 首先先选第一个数 1 那么剩下的工作就是在2-5之间选择2个数 如果我们没有选择第一个数 选第二个数2 那么剩下的工 ...

  9. jQuery中this与$(this)的区别总结

    这里就谈谈this与$(this)的区别. 1.jQuery中this与$(this)的区别 $("#textbox").hover( function() { this.titl ...

  10. C++基础-多态

    本文为 C++ 学习笔记,参考<Sams Teach Yourself C++ in One Hour a Day>第 8 版.<C++ Primer>第 5 版.<代码 ...