Tkinter教程-入门导读

Tkinter是Python的内置GUI库,提供快速简单的图形界面开发。作为Python的标准库,它无需额外安装,支持多平台,并适合开发小型桌面应用。虽然不适合复杂的大型图形界面,但对于初学者和简单工具开发,Tkinter是一个易学且实用的选择。
摘要由CSDN通过智能技术生成

Tkinter教程 - 入门导读 目录树

Tkinter教程-入门导读
来自http://www.tpleina.com/2019/05/276411178.html

Python GUI

图形用户界面(Graphics User Interface, GUI),就是编程开发出客户端图形界面软件,如暴风语音、办公软件、迅雷、QQ、QQ音乐、酷狗音乐等软件

GUI编程属于C/S架构中服务端到客户端,与之相对立的是B/S架构服务端到浏览器端

说一下Python GUI编程,Python支持GUI开发,而且GUI库有很多,如:

  • wxPython 一个跨平台的GUI编程库,是Python对跨平台的GUI库wxWidgets的封装
  • PyGTk Python对GTk+ GUI库的封装
  • PyQt Python对跨平台的GUI库Qt的封装实现,功能强大,可以用PyQt开发漂亮的界面,跨平台较好,但存在商业授权问题
  • PySide 由Nokia提供的对Qt GUI库的另个封装库,成熟度不如PyQt
  • Tkinter Python对Tk GUI库进行了封装

重点说一下Tkinter

Tkinter是Python GUI内置标准库(以上介绍的GUI库大多都是第三方库),Python对Tk GUI库进行了封装,Python集成了Tcl代码,通过内嵌在Python解释器内部的Tcl解释器实现,Tkinter的调用转换成Tcl命令,然后交给Tcl解释器进行解释,实现Python的GUI界面

Tkinter特点

  1. Tkinter 快速入门、使用简单、构建图形界面简易
  2. Tkinter 多平台支持
  3. Python 自带的GUI库、内置标准库,不需下载安装

总结:使用Python开发复杂的桌面应用,不是Python的长处,但是开发一些带界面实用工具,使用Tkinter是不错的选择,完全能够胜任,涵盖GUI开发各方面功能,简单易学容易上手;如果有开发大型的、复杂、漂亮的图形界面的需要,推荐使用PyQt

Tkinter脑图

Tkinter知识脑图

Tkinter入门示例

在网上找的Tkinter代码示例,感觉效果不错,代码结构微调,如下所示:

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

import Tkinter as Tk
from Tkinter import tTk
from Tkinter import scrolledtext
from Tkinter import Menu
from Tkinter import Spinbox
from Tkinter import messagebox as mBox


class ToolTip(object):
    """工具菜单栏"""
    def __init__(self, widget):
        self.widget = widget
        self.tipwindow = None
        self.id = None
        self.x = self.y = 0
 
    def showtip(self, text):
        "Display text in tooltip window"
        self.text = text
        if self.tipwindow or not self.text:
            return
        x, y, _cx, cy = self.widget.bbox("insert")
        x = x + self.widget.winfo_rootx() + 27
        y = y + cy + self.widget.winfo_rooty() +27
        self.tipwindow = tw = Tk.Toplevel(self.widget)
        tw.wm_overrideredirect(1)
        tw.wm_geometry("+%d+%d" % (x, y))
        label = Tk.Label(tw, text=self.text, justify=Tk.LEFT,
                      background="#ffffe0", relief=Tk.SOLID, borderwidth=1,
                      font=("tahoma", "8", "normal"))
        label.pack(ipadx=1)
 
    def hidetip(self):
        tw = self.tipwindow
        self.tipwindow = None
        if tw: tw.destroy()
            
         
def createToolTip(widget, text):
    toolTip = ToolTip(widget)
    def enter(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值