Python提供了许多图形用户界面(GUI)框架, 但Tk界面或Tkinter是使用最广泛的框架。它是跨平台的, 无论操作系统平台(Windows, Linux或macOS)如何, 都可以运行相同的代码。 Tkinter轻巧, 快速且易于使用。 Tkinter提供了可以使用标准属性和几何管理方法自定义的各种小部件。 Tkinter消息框可用于向用户提问或显示消息。
注意:有关更多信息, 请参阅Python GUI – Tkinter
创建tkinter消息框的步骤:
导入tkinter模块
import tkinter as tk
from tkinter import *
注意:在Python 2.x中, 模块的名称为" Tkinter", 在Python 3.x中, 模块的名称为" tkinter"。这里使用Python3.x。
导入tkinter消息框小部件
from tkinter import messagebox as mb
创建调用以显示是/否消息框的方法
def call():
res=mb.askquestion('Exit Application', 'Do you really want to exit')
if res == 'yes' :
root.destroy()
else :
mb.showinfo('Return', 'Returning to main application')
说明:
语法如下:
askquestion(title=None, message=None, **options)
参数
- 标题:用于提供一个名称, 该名称显示在对话框的标题中。
- 信息:给用户的问题。
返回值:单击是选项时返回"是", 而单击否选项时返回"否"。
语法如下:
showinfo(title=None, message=None, **options)
参数
- 标题:用于提供一个名称, 该名称显示在对话框的标题中。
- 信息:给用户的信息。
语法如下:
destroy()
此方法破坏小部件。
为按钮创建画布将被放置
root=tk.Tk()
canvas=tk.Canvas(root, width=200, height=200)
canvas.pack()
说明:
语法如下:
Tk(screenName=None, baseName=None, className=’Tk’, useTk=1)
用于创建父窗口。 Tk类的实例化没有任何参数。可以通过更改className参数的值将父窗口的名称更改为所需的窗口。 " root"是父窗口。
语法如下:
Canvas(master, option=value)
参数:
- 主:用于表示父窗口。这里的" root"是主窗口。
- 选项:用于指定边框, 背景色, 高度, 宽度等。
返回值:该方法返回一个字符串(。!canvas)。
语法如下:
pack(**options)
在放置父窗口小部件之前将它们按块组织起来。这些选项可用于展开, 填充和指定侧面(左, 右, 上, 下)
创建按钮并将其放置在画布内
b=Button(root, text='Quit Application', command=call)
canvas.create_window(100, 100, window=b)
说明:
语法如下:
Button(master=None, options)
参数:
- 主:根是父窗口。
- 选项:有许多受支持的选项。在这种情况下使用的选项是文本和命令。
- 文本:按钮文字
- 命令:按下按钮时要调用的操作或方法。
返回值:该方法返回一个字符串(。!button)。
语法如下:
create_window(x, y, **options)
参数:
x, y:指定小部件(按钮)在画布中的位置。
选项:支持多种选项, 例如锚点, 高度, 宽度, 状态, 标签, 窗口。此处使用的选项是窗口。
- 窗口:window = b, 其中b是要放置在画布上的小部件(按钮)。
返回值:返回窗口对象的对象ID。
调用mainloop()方法
root.mainloop()
说明:
语法如下:
mainloop()
它是一个无限循环, 在程序准备运行时被调用。它等待一个事件(鼠标单击)发生, 并且一旦接收到该事件, 便对该事件进行处理。父窗口未销毁。
完整的程序如下:
# Python program to create
# yes/no message box
import tkinter as tk
from tkinter import *
from tkinter import messagebox as mb
def call():
res = mb.askquestion( 'Exit Application' , 'Do you really want to exit' )
if res = = 'yes' :
root.destroy()
else :
mb.showinfo( 'Return' , 'Returning to main application' )
# Driver's code
root = tk.Tk()
canvas = tk.Canvas(root, width = 200 , height = 200 )
canvas.pack()
b = Button(root, text = 'Quit Application' , command = call)
canvas.create_window( 100 , 100 , window = b)
root.mainloop()
输出如下:
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。