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

一、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简单实现个性签名设计_第1张图片

Tkinter 组件

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

Python GUI--Tkinter简单实现个性签名设计_第2张图片

标准属性

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

Python GUI--Tkinter简单实现个性签名设计_第3张图片

几何管理

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

这里写图片描述

二、个性签名实现代码

本次代码运行环境是python2.7(由于时间版本有点久,在2.7环境下我也不知道还可不可以运行,如果想尝试,请看下面python3.6版的)

# -*- 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 = '

'
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()

2019.4.10日更新 Python3.6版本(正常运行没有问题)

# -*- coding:utf-8 -*-
from tkinter import *    # Python3.6环境下,建议使用python3以上的版本。
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 = '

'
img_url = start_url + re.findall(reg, result.decode('utf-8'))[0] response = requests.get(img_url).content # 将生成的签名图片下载到本地 with open('{}.gif'.format(name.decode('utf-8')), 'wb') as f: f.write(response) try: im = Image.open('{}.gif'.format(name.decode('utf-8'))) 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简单实现个性签名设计_第4张图片

你可能感兴趣的:(python爬虫)