Tkinter(Python GUI编程)从入门到精通(一)

什么是Tkinter

一个 GUI 程序一般由窗口、下拉菜单或者对话框等图形化组件构成, 通过鼠标点击菜单栏、按钮或者弹出对话框的形式来实现人机互动,从而提升人机交互的体验,让“冰冷”的程序变得有“温度”。

注意:GUI 这一概念并非 Python 语言独有,它属于计算机科学技术领域中的一个概念,比如使用 C/C++ 语言开发的 Qt、GTK、Electron 等都属于 GUI 软件包。

Tkinter(即 tk interface) 是 Python 标准 GUI 库,是使用 python 进行窗口视窗设计的模块,简称 “Tk”;从本质上来说,它是对 TCL/TK 工具包的一种 Python 接口封装。Tkinter 是 Python 自带的标准库,因此无须另行安装,它支持跨平台运行,不仅可以在 Windows 平台上运行,还支持在 Linux 和 Mac 平台上运行。

Tkinter 编写的程序,也称为 GUI 程序,GUI (Graphical User Interface)指的是“图形用户界面”,它是计算机图形学(CG)的一门分支,主要研究如何在计算机中表示图形,以及利用计算机进行图形的计算、处理和显示等相关工作。

人生苦短,快学Python!

tkinter是python的GUI开发语言工具,说白了,就是用学的python知识来编写有界面的软件,tkinter编写的程序是跨平台的,你在windows系统里用它编写出来的代码也同样可以用于其它的系统,基本上不用改动什么。

  tkinter这个开发工具,在你安装python的同时,就已经安装好了(只要你是默认安装),不用你再安装,也不用你再配置什么,这方便了很多编程小白。

tkinter的优缺点

tkinter的优点:

即装即用,不用再配置什么,虽然python的GUI开发语言工具有很多种,但tkinter应该是跟python兼容性最好了。

tkinter的缺点:

大家都认为没有合适的,用鼠标拖曳组件,几下就可以做出界面的工具是很遗憾的。对于已经学过别的编程语言,而且也用过用鼠标拖曳控件来做界面,要一个适应过程。

开始第一个Tkinter程序

# -*- coding: utf-8 -*-
"""
Created on Sat Aug 20 10:33:27 2022
@author: www.125jz.com
"""
import tkinter as tk
# 调用Tk()创建主窗口
root=tk.Tk()
# 给主窗口起一个名字,也就是窗口的名字
root.title('125建站:www.125jz.com')
# 设置窗口大小:宽x高,注,此处不能为 "*",必须使用 "x"
root.geometry('450x300')
#开启主循环,让窗口处于显示状态
root.mainloop()
Tkinter(Python GUI编程)从入门到精通(一)

使用anaconda 带的spyder开发。当然也可以使用PyCharm、VScode等工具。

Python开发环境搭建

Python安装-小白图文教程(精)

Tkinter(Python GUI编程)从入门到精通(一)

新建文件,输入以上代码,点击运行按钮或按F5,运行效果如上图所示。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/10993.html

(0)
江山如画的头像江山如画管理团队
ubuntu打开命令行终端的三种方法
上一篇 2022年8月16日 上午10:34
10G免费空间-支持PHP+MySQL+免费域名
下一篇 2022年8月25日 上午8:02

99%的人还看了以下文章

  • 如何用R语言绘制散点图

    如何用R语言绘制散点图如何用R语言绘制散点图如何用R语言绘制散点图如何用R语言绘制散点图

    这篇文章主要介绍了如何用R语言绘制散点图,帮助大家更好的理解和学习使用R语言,感兴趣的朋友可以了解下

    2022年8月9日 编程开发
    6.9K0
  • HTML5- Canvas入门(一)画线

    canvas是一个H5的标签: <canvas> </canvas> canvas本身没有任何的绘图能力,所有的绘图工作都是通过js来实现的。通常我们在js通过getElementById来获取要操作的canvas(这意味着咱得给canvas设个id): <canvas id=”myCanvas”></canvas&…

    2022年7月9日
    6.4K0
  • pycharm 中 plt.imshow(img)图片不显示的解决方法(附案例)

    #%matplotlib inline # 使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中。 # Python提供了许多魔法命令,使得在IPython环境中的操作更加得心应手。魔法命令…

    2023年1月13日
    5.7K0
  • 上机实战八:Java web编程综合案例

    建议学时:6 一、开发基于MVC模式的信息管理系统,如新闻发布系统,要求用户可查看、查询。管理员进入后台可对发布新闻(实现相应的增删查改)。 后台添加文章,建议使用UEditor! UEditor 是开源、免费的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果。 UEditor兼容性很好,是网站站长开发的首选,官网地址:UEditor官网 包…

    2018年12月11日
    7.0K0
  • Ubuntu在线体验(不用安装) 

    Ubuntu是一个以桌面应用为主的Linux操作系统,是非常轻量级的操作系统,全球领先的用于个人电脑、平板及手机的操作系统。 想过要体验下Ubuntu,其实不用那么麻烦,在线就能体验该系统!! 在任意浏览器打开链接https://www.ubuntu.org.cn/tour/zh-CN/ (中文)、https://www.ubuntu.org.cn/tour…

    2022年9月1日
    15.5K0
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    3.0K0

发表回复

登录后才能评论