python内置模块tk的# TKinter 实战教程 - 第四篇

168 阅读2分钟

欢迎来到 TKinter 实战教程系列的第四篇。在上一篇中,我们学习了如何创建文本输入框和处理用户输入。在这一篇中,我们将学习如何创建复选框和单选按钮。

步骤 1: 导入 TKinter 库

首先,确保导入 TKinter 库。

import tkinter as tk

步骤 2: 创建主窗口

创建一个主窗口(root窗口),这将是我们的 GUI 应用程序的主要窗口。

root = tk.Tk()

步骤 3: 添加窗口标题

为主窗口添加一个标题。

root.title("Checkbox and Radiobutton Example")

步骤 4: 创建复选框

现在,我们将在主窗口中添加一个复选框。

def on_checkbox_change():
    if checkbox_var.get() == 1:
        result_label.config(text="复选框被选中了!")
    else:
        result_label.config(text="复选框未被选中。")

checkbox_var = tk.IntVar()
checkbox = tk.Checkbutton(root, text="选择我", variable=checkbox_var, command=on_checkbox_change)
checkbox.pack()

在上面的代码中,我们创建了一个复选框(checkbox),并创建了一个名为 on_checkbox_change 的函数,该函数将在复选框状态发生变化时调用。在 on_checkbox_change 函数中,我们检查复选框的状态,并根据状态更新标签的文本。

步骤 5: 创建单选按钮

让我们在主窗口中添加两个单选按钮。

def on_radiobutton_change():
    selected_option = radio_var.get()
    result_label.config(text=f"您选择的选项是:{selected_option}")

radio_var = tk.StringVar()
radio_button1 = tk.Radiobutton(root, text="选项 1", variable=radio_var, value="选项 1", command=on_radiobutton_change)
radio_button2 = tk.Radiobutton(root, text="选项 2", variable=radio_var, value="选项 2", command=on_radiobutton_change)
radio_button1.pack()
radio_button2.pack()

在上面的代码中,我们创建了两个单选按钮(radio_button1radio_button2),并创建了一个名为 on_radiobutton_change 的函数,该函数将在单选按钮选项发生变化时调用。我们使用 StringVar 来维护单选按钮的选择。

步骤 6: 创建标签

让我们在主窗口中添加一个标签,用于显示复选框和单选按钮的选择结果。

result_label = tk.Label(root, text="")
result_label.pack()

步骤 7: 运行主循环

最后,运行主循环以启动 GUI 应用程序。

root.mainloop()

完整示例代码

下面是完整的示例代码,创建了一个带有复选框和单选按钮的窗口。当用户选择复选框或单选按钮时,选择的结果将显示在标签上。

import tkinter as tk

def on_checkbox_change():
    if checkbox_var.get() == 1:
        result_label.config(text="复选框被选中了!")
    else:
        result_label.config(text="复选框未被选中。")

def on_radiobutton_change():
    selected_option = radio_var.get()
    result_label.config(text=f"您选择的选项是:{selected_option}")

root = tk.Tk()
root.title("Checkbox and Radiobutton Example")

checkbox_var = tk.IntVar()
checkbox = tk.Checkbutton(root, text="选择我", variable=checkbox_var, command=on_checkbox_change)
checkbox.pack()

radio_var = tk.StringVar()
radio_button1 = tk.Radiobutton(root, text="选项 1", variable=radio_var, value="选项 1", command=on_radiobutton_change)
radio_button2 = tk.Radiobutton(root, text="选项 2", variable=radio_var, value="选项 2", command=on_radiobutton_change)
radio_button1.pack()
radio_button2.pack()

result_label = tk.Label(root, text="")
result_label.pack()

root.mainloop()

运行这个代码,您将看到一个带有复选框和单选按钮的窗口。当您选择复选框或单选按钮时,选择的结果将显示在标签上。这是一个简单的 TKinter 应用程序示例,演示了如何创建复选框和单选按钮。