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

yipeiwu_com6年前Python基础

一、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) 有一个控件产生了。

实例示例:

Tkinter 组件

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

标准属性

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

几何管理

Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,一下是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设计】。

相关文章

python中的闭包函数

闭包函数初探 通常我们定义函数都是这样定义的 def foo(): pass 其实在函数式编程中,函数里面还可以嵌套函数,如下面这样 def foo(): print("h...

django 邮件发送模块smtp使用详解

前言 在Python中已经内置了一个smtp邮件发送模块,Django在此基础上进行了简单地封装,让我们在Django环境中可以更方便更灵活的发送邮件。 所有的功能都在django.co...

Python二进制串转换为通用字符串的方法

一个小问题 今天在做一个实验时,需要对一个包含中英文词汇的TXT文件进行读入和整理。 Python代码的编码规则为UTF-8。在读入时,文件的每行是二进制串,形如: b'heroes...

MNIST数据集转化为二维图片的实现示例

本文介绍了MNIST数据集转化为二维图片的实现示例,分享给大家,具体如下: #coding: utf-8 from tensorflow.examples.tutorials.mni...

Python语言描述KNN算法与Kd树

Python语言描述KNN算法与Kd树

最近邻法和k-近邻法 下面图片中只有三种豆,有三个豆是未知的种类,如何判定他们的种类? 提供一种思路,即:未知的豆离哪种豆最近就认为未知豆和该豆是同一种类。由此,我们引出最近邻算法的...