Python GUI Tkinter简单实现个性签名设计


Posted in Python onJune 19, 2018

一、Tkinter的介绍和简单教程

Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。
由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。

注意:Python3.x 版本使用的库名为 tkinter,即首写字母 T 为小写。

import tkinter

创建一个GUI程序

1、导入 Tkinter 模块
2、创建控件
3、指定这个控件的 master, 即这个控件属于哪一个
4、告诉 GM(geometry manager) 有一个控件产生了。

实例示例:

Python GUI Tkinter简单实现个性签名设计

Tkinter 组件

Tkinter的提供各种控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件通常被称为控件或者部件。
目前有15种Tkinter的部件。我们提出这些部件以及一个简短的介绍,在下面的表:

Python GUI Tkinter简单实现个性签名设计

标准属性

标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。

Python GUI Tkinter简单实现个性签名设计

几何管理

Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置

Python GUI Tkinter简单实现个性签名设计

二、个性签名实现代码

本次代码运行环境是python2.7

# -*- coding:utf-8 -*-

from Tkinter import * # python 3 是tkinter
import tkMessageBox
import requests
import re
from PIL import Image


def download():
  start_url = 'http://www.uustv.com/'
  name = entry.get().encode('utf-8')
  if not name:
    tkMessageBox.showinfo('提示', '请输入姓名再设计!')
    return
  data = {
    'word': name,
    'sizes': '60',
    'fonts': 'jfcs.ttf',
    'fontcolor': '#000000'
  }
  result = requests.post(start_url, data=data).content
  reg = '<div class="tu"><img src="(.*?)"/></div>'
  img_url = start_url + re.findall(reg, result)[0]
  response = requests.get(img_url).content
  # 将生成的签名图片下载到本地
  with open('{}.gif'.format(name.decode('utf-8').encode('gbk')), 'wb') as f:
    f.write(response)
  try:
    im = Image.open('{}.gif'.format(name.decode('utf-8').encode('gbk')))
    im.show()
  except:
    print '自己打开看吧'


root = Tk()
root.title('个性签名设计')
root.geometry('+800+300') # 设置窗口出现在屏幕上面的位置
Label(root, text='姓名', font=('微软雅黑', 15)).grid() # 布局方法不要混用
entry = Entry(root, font=('微软雅黑', 15))
entry.grid(row=0, column=1)
button = Button(root, text='设计签名', font=('微软雅黑', 15), width='15', height=1, command=download)
button.grid(row=1, column=1)
root.mainloop()

三、运行结果

Python GUI Tkinter简单实现个性签名设计

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 添加用户设置密码并发邮件给root用户
Jul 25 Python
利用Python命令行传递实例化对象的方法
Nov 02 Python
python中的随机函数random的用法示例
Jan 27 Python
Python用 KNN 进行验证码识别的实现方法
Feb 06 Python
python使用pipeline批量读写redis的方法
Feb 18 Python
Python-copy()与deepcopy()区别详解
Jul 12 Python
python监控进程状态,记录重启时间及进程号的实例
Jul 15 Python
Django Rest framework权限的详细用法
Jul 25 Python
Python使用py2neo操作图数据库neo4j的方法详解
Jan 13 Python
深入浅析python的第三方库pandas
Feb 13 Python
pandas分组聚合详解
Apr 10 Python
PyTorch dropout设置训练和测试模式的实现
May 27 Python
TensorFlow数据输入的方法示例
Jun 19 #Python
深入分析python中整型不会溢出问题
Jun 18 #Python
Python登录注册验证功能实现
Jun 18 #Python
详解python3中zipfile模块用法
Jun 18 #Python
python爬取个性签名的方法
Jun 17 #Python
Python爬虫包BeautifulSoup学习实例(五)
Jun 17 #Python
Python爬虫包BeautifulSoup实例(三)
Jun 17 #Python
You might like
thinkPHP查询方式小结
2016/01/09 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
使用prototype.js 的时候应该特别注意的几个问题.
2007/04/12 Javascript
jQuery 使用手册(三)
2009/09/23 Javascript
JavaScript学习笔记(十七)js 优化
2010/02/04 Javascript
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
JavaScript字符串对象substr方法入门实例(用于截取字符串)
2014/10/16 Javascript
jquery实现动静态条形统计图
2015/08/17 Javascript
js运动应用实例解析
2015/12/28 Javascript
基于jQuery实现二级下拉菜单效果
2016/02/01 Javascript
JS+Canvas绘制时钟效果
2020/08/20 Javascript
jQuery向父辈遍历的简单方法
2016/09/18 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
利用nodejs监控文件变化并使用sftp上传到服务器
2017/02/18 NodeJs
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
Vue实现背景更换颜色操作
2020/07/17 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
Python多线程同步Lock、RLock、Semaphore、Event实例
2014/11/21 Python
Python中的XML库4Suite Server的介绍
2015/04/14 Python
Python中的ceil()方法使用教程
2015/05/14 Python
django请求返回不同的类型图片json,xml,html的实例
2018/05/22 Python
flask框架实现连接sqlite3数据库的方法分析
2018/07/16 Python
使用python来调用CAN通讯的DLL实现方法
2019/07/03 Python
Python autoescape标签用法解析
2020/01/17 Python
Python如何使用PIL Image制作GIF图片
2020/05/16 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
详解使用双缓存解决Canvas clearRect引起的闪屏问题
2019/04/29 HTML / CSS
编码实现字符串转整型的函数
2012/06/02 面试题
乡镇干部先进事迹材料
2014/02/03 职场文书
小学德育工作经验交流材料
2014/05/22 职场文书
会计个人实习计划书
2014/08/15 职场文书
群众路线教育实践活动学习笔记
2014/11/05 职场文书
教你使用vscode 搭建react-native开发环境
2021/07/07 Javascript