📅  最后修改于: 2023-12-03 14:49:47.208000             🧑  作者: Mango
Tkinter 是 Python 标准库中的一部分,它是 Python 内置的一个 GUI 工具包,支持从基本的按钮到复杂的窗口布局。在 Python 中使用 Tkinter 创建 GUI 界面非常的方便。
在这个示例中,我们将会学习如何使用 Tkinter 来创建一个 GUI,来获取一个网站的域名。
在开始之前,你需要有一些基本的 Python 编程经验,然后你需要安装 Python 和 Tkinter 工具包。一般来说,Python 学习和开发是在 Linux、macOS 或 Windows 操作系统中,任何一个操作系统都可以使用 Python,但对于创建 GUI 来说,我们推荐使用 macOS 或 Windows 系统。
在 macOS 系统中,默认已经安装了 Python,你需要打开终端输入如下命令来安装 Tkinter 工具包:
$ sudo apt-get install python3-tk
在 Windows 系统中,你需要安装 Python 和 Tkinter 工具包,可以在 Python 官方网站 上下载 Python 的安装程序。安装过程简单,这里不详细介绍,安装完 Python 后,你需要在命令行界面执行以下命令来安装 Tkinter 工具包:
$ pip install tkinter
为了使本文的教学更加实际,这里以一个获取域名信息的例子来展示如何使用 Tkinter 创建一个 GUI 界面。
import tkinter as tk
import whois
window = tk.Tk()
window.title("Get Domain Info")
window.geometry("400x300")
tk.Tk()
: 创建一个 Window 对象。window.title()
: 用于设置窗口的标题。window.geometry()
: 用于设置窗口的大小。domain_name = tk.StringVar()
domain_input = tk.Entry(window, textvariable=domain_name, font=("Arial", 14))
domain_input.place(x=100, y=50, width=200, height=30)
tk.StringVar()
: 创建一个字符串类型的变量。tk.Entry()
: 创建一个输入框,textvariable
参数指定了输入框显示的值。domain_input.place()
: 设置输入框的显示位置和大小。result_text = tk.Text(window, font=("Arial", 14))
result_text.place(x=100, y=150, width=200, height=100)
tk.Text()
: 创建一个文本框。def get_info():
domain = domain_name.get()
w = whois.whois(domain)
result_text.delete("1.0", "end")
result_text.insert(tk.END, w.text)
btn = tk.Button(window, text="Get Info", command=get_info)
btn.place(x=150, y=100, width=100, height=30)
tk.Button()
: 创建一个按钮,command
参数指定了点击按钮后调用的函数。get_info()
: 当点击按钮时会执行 get_info()
函数。domain_name.get()
: 获取输入框中输入的内容。whois.whois()
: 调用 Pythonwhois 模块获取域名的 Whois 信息。result_text.delete()
: 删除文本框中的内容。result_text.insert()
: 在文本框中插入一段文本。最终的代码实现如下:
import tkinter as tk
import whois
window = tk.Tk()
window.title("Get Domain Info")
window.geometry("400x300")
domain_name = tk.StringVar()
domain_input = tk.Entry(window, textvariable=domain_name, font=("Arial", 14))
domain_input.place(x=100, y=50, width=200, height=30)
result_text = tk.Text(window, font=("Arial", 14))
result_text.place(x=100, y=150, width=200, height=100)
def get_info():
domain = domain_name.get()
w = whois.whois(domain)
result_text.delete("1.0", "end")
result_text.insert(tk.END, w.text)
btn = tk.Button(window, text="Get Info", command=get_info)
btn.place(x=150, y=100, width=100, height=30)
window.mainloop()
在你完成代码的编写之后,你可以运行程序来测试。
在 Windows 系统中,你需要在命令行界面执行以下命令运行程序:
$ python script.py
在 macOS 系统中,你需要在终端中执行以下命令:
$ python3 script.py
在本文中,我们学习了如何使用 Tkinter 创建一个 GUI,提供输入框、文本框和按钮,来获取域名的 Whois 信息。这个例子展示了 Tkinter 的灵活、易用性,适合初学者在学习 Python GUI 开发中使用。