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%的人还看了以下文章

  • 基于jspSmartUpload的Jsp文件上传实例(只能上传图片格式文件)

    支持中文的jsp文件上传组件:jspSmartUpload.jar下载 jar包的存放位置:WEB-INF\lib下。 upload_image.html <form method=”post” action=”new_upload.jsp” enctype=”multipart/form-data”> <input type=”file”…

    2018年12月11日
    8.4K0
  • AdaGrad算法—随机梯度下降算法

    AdaGrad算法,它可以根据自变量在每个维度的梯度值的大小来调整各个维度上的学习率,从而避免统一的学习率难以适应所有维度的问题。

    2023年10月9日
    5.0K0
  • JS截取字符串方法详解:前面/中间/后面

    JS截取字符串方法,JS的match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 js截取字符串中间的内容 var str = “aaabbbcccdddeeefff”; str = str.match(/aaa(\S*)fff/)[1]; alert(str);//结果bbbcccdddeee js截取某个字符串前面的内容 var…

    2023年1月5日
    8.9K0
  • MySql数据库Timestamp、time、datetime 区别及使用详解

    对于数据库来说,有多种日期时间字段可供选择,如 timestamp 和 datetime 。 不仅新手,包括一些有经验的程序员还是比较迷茫,究竟我该用哪种类型来存储日期时间呢? 一个完整的日期格式如下:YYYY-MM-DD HH:MM:SS[.fraction],它可分为两部分:date部分和time部分,其中,date部分对应格式中的“YYYY-MM-DD…

    编程开发 2018年5月2日
    7.8K1
  • oracle 计算时间差,包含年、月、日、时、分、秒

    在做系统时,如图书管理系统、车辆管理系统、事务管理系统等,经常需要我们计算两个日期相差多少天,图书是否应该归还,事情是否完成等。 今天给大家分享oracle 中如何计算时间差! oracle时间差是以天数为单位,所以换算成年月,日 select floor(to_number(sysdate-to_date(‘2018-11-02 15:55:03’,’yy…

    2018年2月13日
    4.9K0
  • JSP分页思想2—核心代码

    一、通过order by id desc limit ?,? 控制当前页面显示的记录 显示第几页,共几页,上一页 下一页 <% int PageSize=2; //一页显示的记录数 int RowCount=0; //记录总数 int PageCount=0; //总页数 int intPage; //待显示页码 int i;//循环变量 String…

    2019年10月30日
    17.2K0

发表回复

登录后才能评论