返回顶部
首页 > 资讯 > 后端开发 > Python >Python中的tkinter库怎么用
  • 451
分享到

Python中的tkinter库怎么用

2023-06-28 20:06:36 451人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇“python中的tkinter库怎么用”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Python中的tkinter库怎么用”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解

这篇“python中的tkinter库怎么用”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Python中的tkinter库怎么用”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们进入主题吧。

TKinter
Python 的 GUI 库非常多,之所以选择 Tkinter,一是最为简单,二是自带库,不需下载安装,随时使用,跨平台兼容性非常好,三则是从需求出发的,Python 在实际应用中极少用于开发复杂的桌面应用,毕竟,Python 的各种 GUI 工具包都“一般得很”,不具备优势。

案例一

Label & Button 标签和按钮

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x100")  # 设置窗口的大小var1 = tk.StringVar()  # 定义tk变量l1 = tk.Label(window, textvariable=var1, bg="green", font=("Arial", 12), width=15, height=2)  # 设置标签,内容显示为var1变量l1.pack()  # 摆放这个标签hit_me1 = Falsedef hit_me():    global hit_me1    if not hit_me1:        hit_me1 = True        var1.set("this is tk")  # 给变量赋值    else:        hit_me1 = False        var1.set("this is tk, too")b1 = tk.Button(window, text="hit me", width=15, height=2, command=hit_me)  # 点击按钮,运行hit_me这个函数b1.pack()window.mainloop()  # 显示窗口

案例二

Entry & Text 输入和文本框

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x150")  # 设置窗口的大小e = tk.Entry(window, show=None)  # 如果输入密码的话,show="*"e.pack()def insert_point():    var = e.get()  # 得到文本输入框的值    t.insert("insert", var)  # 文本放到光标位置def insert_end():    var = e.get()    t.insert("end", var)  # 将文本放到文本框的末尾    # t.insert(1.1, var)  # 将文本放到第一行第一列b1 = tk.Button(window, text="insert point", width=15, height=2, command=insert_point).pack()  # 定义一个按钮,显示在光标位置插入文本b2 = tk.Button(window, text="insert end", width=15, height=2, command=insert_end).pack()  # 在末尾出插入t = tk.Text(window, height=2, width=15)t.pack()  # 注意不能一行写完,pack要写在下一行window.mainloop()  # 显示窗口

案例三

Listbox 部件

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x150")  # 设置窗口的大小var1 = tk.StringVar()l = tk.Label(window, bg="yellow", width=4, textvariable=var1)l.pack()def print_selection():    var = lb.get(lb.curselection())  # 得到鼠标点击的内容    var1.set(var)  # 将值赋值给var1b1 = tk.Button(window, text="insert point", width=15, height=2,               command=print_selection).pack()  # 定义一个按钮,显示在光标位置插入文本var2 = tk.StringVar()  # 存储可迭代对象的值var2.set((1, 2, 3, 4))  # 列表也可,设置初始值lb = tk.Listbox(window, listvariable=var2)list_item = [1, 2, 11, 54]for i in list_item:    lb.insert("end", i)  # 向列表框中插入值lb.delete(1)  # 删除下标索引为2的值lb.pack()window.mainloop()  # 显示窗口

案例四

Radiobutton 选择按钮

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x150")  # 设置窗口的大小var1 = tk.StringVar()l = tk.Label(window, bg="yellow", width=15)l.pack()def print_selection():    l.config(text=f"you have select {var1.get()}")  # 将text重新赋值rad1 = tk.Radiobutton(window, text="select a", variable=var1, value="A",                      command=print_selection).pack()  # variable=var1, value="A" 的意思是,将var1赋值成Arad2 = tk.Radiobutton(window, text="select b", variable=var1, value="B", command=print_selection).pack()rad3 = tk.Radiobutton(window, text="select c", variable=var1, value="C", command=print_selection).pack()window.mainloop()  # 显示窗口

案例五

Scale 尺度

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x150")  # 设置窗口的大小l = tk.Label(window, bg="yellow", width=15)l.pack()def print_selection(v):  # Scale调用函数,其有自动的传入值    l.config(text=f"you have select {v}")    s = tk.Scale(window, label="try me", from_=5, to=11, orient=tk.HORIZONTAL,             length=200, showvalue=0, tickinterval=3, resolution=0.01, command=print_selection)# label设置名字,from to 设置刻度,orient设置方向,length设置长度,showvalue展示的值,tickinterval刻度,resolution精度s.pack()window.mainloop()  # 显示窗口

案例六

Checkbutton 勾选项

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x150")  # 设置窗口的大小l = tk.Label(window, bg="yellow", width=15, text="empty")l.pack()def print_selection():  # Scale调用函数,其有自动的传入值    if (var1.get() == 1) & (var2.get() == 0):        l.config(text="i love python")    elif (var1.get() == 1) & (var2.get() == 1):        l.config(text="i love both")    elif (var1.get() == 0) & (var2.get() == 1):        l.config(text="i love c++")    else:        l.config(text="i don't love either")var1 = tk.IntVar()var2 = tk.IntVar()cl = tk.Checkbutton(window, text="Python", variable=var1, onvalue=1, offvalue=0                    , command=print_selection)  # 选择var1的值为1,否则为0c2 = tk.Checkbutton(window, text="C++", variable=var2, onvalue=1, offvalue=0                    , command=print_selection)cl.pack()c2.pack()window.mainloop()  # 显示窗口

案例七

canvas 画布

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("muy window")  # 设置标题window.geometry("200x200")  # 设置窗口的大小canvas = tk.Canvas(window, bg="blue", height=100, width=200)image_file = tk.PhotoImage(file=r"D:\programme\WEB\web_file\web学习\images\image01.jpg")  # 注意,只能导入.gif的图片image = canvas.create_image(0, 0, anchor="nw", image=image_file).pack()  # 锚点为左上角,西北方向x0, y0, x1, y1 = 20, 50, 80, 80line = canvas.create_line(x0, y0, x1, y1)  # 画线oval = canvas.create_oval(x0, y0, x1, y1, fill="red")  # 绘制扇形arc = canvas.create_arc(x0 + 30, y0 + 30, x1 + 30, x1 + 30, y1 + 30, start=0, extent=180)  # 扇形rect = canvas.create_rectangle(100, 30, 100 + 20, 30 + 20)  # 绘制正方形canvas.pack()def moveit():    canvas.move(rect, 0, 2)  # 移动正方形,使其往下走两个单位a = tk.Button(window, text="move", command=moveit).pack()window.mainloop()  # 显示窗口

案例八

Menubar 菜单

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("my window")  # 设置标题window.geometry("200x200")  # 设置窗口的大小count = 0l = tk.Label(window, text="", bg="yellow")l.pack()def do_job():    global count    l.config(text=f"do{str(count)}")    count += 1"""定义文件选项"""mb = tk.Menu(window)file = tk.Menu(mb, tearoff=0)  # 有没有分隔线mb.add_cascade(label="File", menu=file)  # 添加一个功能file.add_command(label="New", command=do_job)  # 每一个选项都是一个功能,命令file.add_command(label="Open", command=do_job)file.add_command(label="Save", command=do_job)sm = tk.Menu(file)  # 在File里面继续添加命令file.add_cascade(label="Submit", menu=sm)sm.add_command(label="New", command=do_job)window.config(menu=mb)  # 将菜单添加到window上面window.mainloop()  # 显示窗口

案例九

Frame 框架

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("my window")  # 设置标题window.geometry("200x200")  # 设置窗口的大小tk.Label(window, text="on the window").pack()# 添加框架fm = tk.Frame(window)fm.pack()fm_1 = tk.Frame(fm)fm_r = tk.Frame(fm)fm_1.pack(side="left")fm_r.pack(side="right")tk.Label(fm_1, text="on the frame_1").pack()tk.Label(fm_r, text="on the frame_r").pack()window.mainloop()  # 显示窗口

案例十

messagebox 弹窗

import tkinter as tkimport tkinter.messagebox window = tk.Tk()  # 实例化Tkwindow.title("my window")  # 设置标题window.geometry("200x200")  # 设置窗口的大小def hit_me():    tk.messagebox.showinfo(title="hi", message="hit")  # 注意,要导入模块,还有showwarning, showerror,"""tkinter.messagebox.askokcancel('提示', '要执行此操作吗')#确定/取消,返回值true/falsetkinter.messagebox.askquestion('提示', '要执行此操作吗')#是/否,返回值yes/notkinter.messagebox.askyesno('提示', '要执行此操作吗')#是/否,返回值true/falsetkinter.messagebox.askretrycancel('提示', '要执行此操作吗')#重试/取消,返回值true/false文件对话框import tkinter.filedialoga = tkinter.filedialog.asksaveasfilename()#返回文件名print(a)a = tkinter.filedialog.asksaveasfile()#会创建文件a = tkinter.filedialog.askopenfilename()#返回文件名a = tkinter.filedialog.askopenfile()#返回文件流对象a = tkinter.filedialog.askdirectory()#返回目录名a = tkinter.filedialog.askopenfilenames()#可以返回多个文件名a = tkinter.filedialog.askopenfiles()#多个文件流对象    tk.Button(window, text="hit me", command=hit_me).pack()window.mainloop()  # 显示窗口

案例十一

pack grid place 放置

import tkinter as tk window = tk.Tk()  # 实例化Tkwindow.title("my window")  # 设置标题window.geometry("200x200")  # 设置窗口的大小# tk.Label(window, text="pack").pack(side="top")# tk.Label(window, text="pack").pack(side="bottom")# tk.Label(window, text="pack").pack(side="left")# tk.Label(window, text="pack").pack(side="right")# for i in range(4):  # 行#     for j in range(3):  # 列#         tk.Label(window, text="grid").grid(row=i, column=j, padx=10, pady=10)  # 以方格的形式放置tk.Label(window, text="place").place(x=100, y=100, anchor="nw")  # 点的形式window.mainloop()  # 显示窗口

登录窗口

import tkinter as tkimport tkinter.messagebox window = tk.Tk()  # 实例化Tkwindow.title("login")  # 设置标题window.geometry("450x300")  # 设置窗口的大小user_info = [{"name": "admin", "pwd": "1"}, {"name": "user", "pwd": "1"}]  # 存储账号信息# 定义函数def login():    user_info_name = [i["name"] for i in user_info]    user_info_pwd = [i["pwd"] for i in user_info]    user_name = var_user_name.get()    user_pwd = var_pwd.get()    if user_name in user_info_name:        if user_pwd == user_info_pwd[user_info_name.index(user_name)]:            tk.messagebox.showinfo(title="欢迎回来", message="How are you")        else:            tk.messagebox.showerror(message="pwd error")    else:        answer = tk.messagebox.askquestion(title="warn", message="您还没有账号,是否需要注册?")        if answer:            sign()def sign():    def store():        new_pwd1 = new_pwd.get()        new_user_name1 = new_user_name.get()        user_info.append({"name": new_user_name1, "pwd": new_pwd1})        tk.messagebox.showinfo(message="注册成功")        window_sign.destroy()  # 关闭窗口    def close():        window_sign.destroy()    window_sign = tk.Toplevel(window)  # 窗口上的窗口    window_sign.geometry("350x200")    window_sign.title("Sign up window")    # user    tk.Label(window_sign, text="Name:").place(x=60, y=60)    new_user_name = tk.StringVar()  # 注意要使用.get()得到值    new_user_name.set("exampe@python.com")  # 默认值    tk.Entry(window_sign, textvariable=new_user_name).place(x=90, y=60)  # 输入用户名    # pwd    tk.Label(window_sign, text="Pwd:").place(x=60, y=100)    new_pwd = tk.StringVar()    tk.Entry(window_sign, textvariable=new_pwd, show="*").place(x=90, y=100)  # 输入密码    # 确认按钮    tk.Button(window_sign, text="确认", command=store).place(x=100, y=140)    # 取消按钮    tk.Button(window_sign, text="取消", command=close).place(x=170, y=140)if __name__ == '__main__':        tk.Label(window, text="User Name:").place(x=50, y=50)    var_user_name = tk.StringVar()  # 注意要使用.get()得到值    var_user_name.set("exampe@python.com")  # 默认值    tk.Entry(window, textvariable=var_user_name).place(x=130, y=50)  # 输入用户名    tk.Label(window, text="PassWord:").place(x=50, y=90)    var_pwd = tk.StringVar()    tk.Entry(window, textvariable=var_pwd, show="*").place(x=130, y=90)  # 输入密码    # login Button    tk.Button(window, text="Login", command=login).place(x=130, y=130)  # 登录按钮    # sign Button    tk.Button(window, text="Sign Up", command=sign).place(x=200, y=130)  # 注册按钮    window.mainloop()  # 显示窗口

以上是“Python中的tkinter库怎么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网Python频道!

--结束END--

本文标题: Python中的tkinter库怎么用

本文链接: https://lsjlt.com/news/321062.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python中的tkinter库怎么用
    这篇“Python中的tkinter库怎么用”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“Python中的tkinter库怎么用”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解...
    99+
    2023-06-28
  • 怎么用Python tkinter库绘图
    这篇文章主要讲解了“怎么用Python tkinter库绘图”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Python tkinter库绘图”吧!一、小房子绘制实例...
    99+
    2023-06-29
  • python中的tkinter怎么使用
    要使用tkinter库来创建一个GUI应用程序,你需要按照以下步骤:1. 导入tkinter库:首先,你需要导入tkinter库,通...
    99+
    2023-09-28
    python
  • python中tkinter怎么使用
    在Python中使用Tkinter库来创建图形用户界面(GUI)。首先,需要导入Tkinter库:```pythonimport t...
    99+
    2023-09-13
    python
  • 怎么用Python tkinter库绘制椭圆
    这篇文章主要介绍“怎么用Python tkinter库绘制椭圆”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么用Python tkinter库绘制椭圆”文章能帮助大家解决问题。...
    99+
    2023-06-29
  • python tkinter库怎么安装及使用
    安装Python Tkinter库是非常简单的。首先确保你已经安装了Python,然后按照以下步骤进行操作: 打开命令行窗口(W...
    99+
    2024-04-02
  • Tkinter怎么在python中使用
    这期内容当中小编将会给大家带来有关Tkinter怎么在python中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。from tkinter import *from&nb...
    99+
    2023-06-14
  • Python的tkinter库如何使用
    要使用Python的tkinter库,首先需要导入该库:```import tkinter as tk```然后,可以创建一个Tk对...
    99+
    2023-09-27
    Python tkinter
  • python Tkinter怎么使用
    这篇文章主要介绍“python Tkinter怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python Tkinter怎么使用”文章能帮助大家解决问题。简介tkinte...
    99+
    2023-07-05
  • Python中tkinter库安装的方法是什么
    在大多数情况下,tkinter库是Python的标准库,因此不需要单独安装。您只需要确保您的Python解释器中包含了tkinter...
    99+
    2024-04-02
  • python中的tkinter库弹窗messagebox详解
    古人学问遗无力,少壮功夫老始成 python之tkinter库弹窗messagebox,常码字不易,出精品更难,没有特别幸运,那么请先特别努力,别因为懒惰而失败,还矫情地将原因归于自己倒霉。你必须特别努力,才能显...
    99+
    2022-06-02
    python弹窗messagebox python tkinter库
  • python的Tkinter方法怎么使用
    本篇内容主要讲解“python的Tkinter方法怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python的Tkinter方法怎么使用”吧!一、前言1.1、Tkinter是什么Tkin...
    99+
    2023-06-29
  • Python中Tkinter Scrollbar滚动条怎么使用
    这篇文章主要介绍“Python中Tkinter Scrollbar滚动条怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中Tkinter Scrollbar滚动...
    99+
    2023-07-05
  • Python中的tkinter库简单案例详解
    目录案例一Label & Button 标签和按钮案例二Entry & Text 输入和文本框案例三Listbox 部件案例四Radiobutton 选择按钮案例五S...
    99+
    2024-04-02
  • python的tkinter使用
    __author__ = 'Python' import tkinter as tk class Application(tk.Frame):     def __init__(self, master=None):         t...
    99+
    2023-01-31
    python tkinter
  • Python Tkinter Menu控件怎么使用
    这篇“Python Tkinter Menu控件怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“P...
    99+
    2023-06-28
  • Python可视化tkinter怎么使用
    这篇文章主要讲解了“Python可视化tkinter怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python可视化tkinter怎么使用”吧!1、基本用法# coding...
    99+
    2023-07-02
  • python中Tkinter如何使用
    本篇内容介绍了“python中Tkinter如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、前言1、Tkinter是什么Tkint...
    99+
    2023-07-02
  • 怎么在Python中使用tkinter图形化界面
    本篇文章为大家展示了怎么在Python中使用tkinter图形化界面,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Python...
    99+
    2023-06-14
  • 怎么在Python中利用tkinter库实现投放鼠标模拟点击器
    本篇文章为大家展示了怎么在Python中利用tkinter库实现投放鼠标模拟点击器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作