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使用pyhook监控键盘并实现切换歌曲的功能
Jul 18 Python
Python多线程编程(三):threading.Thread类的重要函数和方法
Apr 05 Python
python实现可以断点续传和并发的ftp程序
Sep 13 Python
Python学习笔记之解析json的方法分析
Apr 21 Python
python实现对指定字符串补足固定长度倍数截断输出的方法
Nov 15 Python
PyCharm配置mongo插件的方法
Nov 30 Python
python循环定时中断执行某一段程序的实例
Jun 29 Python
33个Python爬虫项目实战(推荐)
Jul 08 Python
python线程信号量semaphore使用解析
Nov 30 Python
浅谈keras的深度模型训练过程及结果记录方式
Jan 24 Python
在python image 中实现安装中文字体
May 16 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 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
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
PHP利用header跳转失效的解决方法
2014/10/24 PHP
PHP整合七牛实现上传文件
2015/07/03 PHP
PHP类的特性实例分析
2016/09/28 PHP
自己整理的一个javascript日期处理函数
2010/10/16 Javascript
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
jQuery实现带动画效果的二级下拉导航方法
2015/03/11 Javascript
js实现获取div坐标的方法
2015/11/16 Javascript
jQuery动画显示和隐藏效果实例演示(附demo源码下载)
2015/12/31 Javascript
谈一谈JS消息机制和事件机制的理解
2016/04/14 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
获取JavaScript异步函数的返回值
2016/12/21 Javascript
javascript设计模式之中介者模式学习笔记
2017/02/15 Javascript
深入解析nodejs HTTP服务
2017/07/25 NodeJs
gulp安装以及打包合并的方法教程
2017/11/19 Javascript
JavaScript设计模式之观察者模式(发布订阅模式)原理与实现方法示例
2018/07/27 Javascript
详解Node.js 中使用 ECDSA 签名遇到的坑
2018/11/26 Javascript
python处理中文编码和判断编码示例
2014/02/26 Python
Python中多个数组行合并及列合并的方法总结
2018/04/12 Python
python生成多个只含0,1元素的随机数组或列表的实例
2018/11/12 Python
Python爬虫之urllib基础用法教程
2019/10/12 Python
opencv+python实现均值滤波
2020/02/19 Python
Python3实现飞机大战游戏
2020/04/24 Python
使用HTML5里的classList操作CSS类
2016/06/28 HTML / CSS
印度尼西亚综合购物网站:Lazada印尼
2016/09/07 全球购物
BRASTY捷克:购买香水、化妆品、手袋和手表
2017/07/12 全球购物
美国椅子和沙发制造商:La-Z-Boy
2020/10/25 全球购物
EJB2和EJB3在架构上的不同点
2014/09/29 面试题
经济学博士求职自荐信范文
2013/11/23 职场文书
应届本科生推荐信范文
2013/12/25 职场文书
护士毕业生自荐信
2014/02/07 职场文书
财务管理职业生涯规划书
2014/02/26 职场文书
2016五四青年节活动总结范文
2016/04/06 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis