ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python GUI tkinter库 自学1

2021-02-12 18:33:05  阅读:222  来源: 互联网

标签:messagebox tkinter Python GUI window button1 import 窗口


第一个GUI程序

1、创建窗口

Python导入库文件(tkinter)的语法:

  1. from tkinter的意思就是导入tkinter,它是一个库,也可以简称之为类

  2. import * 的意思是导入库中所有的类,函数,变量等等信息,这样在调用相关函数或者变量的时候,就不用加Tkinter前缀了

# 语法
# 导入库文件(tkinter)
from tkinter import *

%1
from tkinter import *
window = Tk()
# 创建窗口、用变量window接收

2、启用窗口

from tkinter import *

window = Tk()

window.mainloop()
# 调用 mainloop 方法、启用窗口并进入事件循环
# 调用此方法、窗口才能活起来、处于一直监听用户的操作的状态
# (也就是说、只有接收到了用户特定的操作窗口才会进行反应)

3、创建窗口上的按钮并绑定相关文字

from tkinter import *

window = Tk()

button1 = Button(window)
# 在主窗口 window 的基础上创建按钮 button1 

button1["text"] = '新年好'
# 给按钮 button1 绑定文字 '点我就送花'

button1.pack()
# 不写此方法会导致看不见按钮及相关文字(此处不详细解释)

window.mainloop()

4、给按钮创建一个子窗口

Python导入库文件(tkinter)的语法:

  1. from tkinter的意思就是导入tkinter,它是一个库,也可以简称之为类
  2. import messagebox 的意思是导入库Messagebox模块
# 语法
from tkinter import messagebox

%1
from tkinter import *
from tkinter import messagebox

window = Tk()

button1 = Button(window)
button1["text"] = '新年好'

button1.pack()

def YuanQi(e):
# 定义事件函数
    # e 是事件对象
    messagebox.showinfo(message = "一年比一年更有元气哈!")
    print("一年比一年更有元气哈!")

button1.bind("<Button-1>",YuanQi)
# 将事件函数绑定到按钮 button1 上
# <Button-1> 为按键格式、鼠标点击

window.mainloop()

*5、Messagebox模块拓展

Python 中的 tkinter 模块内有 Messagebox 模块,提供了8个对话

1.提示消息框
tkinter.messagebox.showinfo(message = "人生苦短")
# 默认新窗口、不需要自定义新窗口的名字、只需要填写窗口内的内容
tkinter.messagebox.showinfo('提示','人生苦短')
# 创建新窗口、需要自定义新窗口的名字和窗口内容

2.消息警告框
tkinter.messagebox.showwarning(message = "明日有大雨")
tkinter.messagebox.showwarning('警告','明日有大雨')

3.错误消息框
tkinter.messagebox.showerror(message = "出错了")
tkinter.messagebox.showerror('错误','出错了')

4.对话框

5.文件对话框

标签:messagebox,tkinter,Python,GUI,window,button1,import,窗口
来源: https://blog.csdn.net/weixin_51927215/article/details/113795923

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有