内容正文:
90 图形用户界面
tkinter 综合应用
案例一 综合组件示例
编程思路分析:
这段代码使用 Python 的 Tkinter 库创建了一个简单的图形用户界面,展示了多种不同类型的组件,并实现了一些基本的交互功能。
具体组件及功能
1. 标签(Label): 创建了一个标签组件,显示文本“这是一个综合示例:”,用于向用户提供说明或提示信息。
2. 输入框(Entry):创建了一个单行输入框,用户可以在其中输入文本。
3. 按钮(Button):创建了一个按钮,显示文本“点击按钮”。当用户点击这个按钮时,会调用`button_click`函数,该函数获取输入框中的内容并打印到控制台。
4. 复选框(Checkbutton):创建了一个复选框,显示文本“复选框”,并关联到一个`IntVar`变量`check_var`。通过这个变量可以获取复选框的选中状态。
5. 单选按钮(Radiobutton):创建了两个单选按钮,分别显示文本“单选一”和“单选二”,并关联到同一个`IntVar`变量`radio_var`。用户只能选择其中一个单选按钮,通过这个变量可以确定哪个单选按钮被选中。
6. 文本框(Text):创建了一个多行文本框,设置了高度为 5 行,宽度为 30 个字符。初始状态下,在文本框中插入了“这是一个多行文本框。”的文本内容。用户可以在这个多行文本框中输入和编辑多行文本。
总体流程
1. 首先导入 Tkinter 库并将其重命名为`tk`。
2. 创建主窗口`root`,并设置窗口标题为“综合组件示例”。
3. 依次创建各个组件,并将它们添加到主窗口中进行布局。
4. 最后启动主窗口的事件循环,使程序持续运行并等待用户交互。
参考代码:
案例二 QQ登录界面
编程思路分析:这段代码使用 Python 的 Tkinter 库创建了一个模拟的 QQ 登录界面。界面包含了用户名和密码的输入框、登录按钮以及记住密码和自动登录两个复选框。
具体组件及功能
主窗口设置:
root = tk.Tk():创建主窗口对象。
root.geometry("400x300+300+300"):设置主窗口的大小为 400x300 像素,并将窗口的初始位置设置在屏幕坐标 (300, 300) 处。
root.title("QQ 登录界面"):设置主窗口的标题为 “QQ 登录界面”。
用户名部分:
user_label = tk.Label(root, text="用户名:"):创建一个标签,显示文本 “用户名:”,用于提示用户输入用户名的位置。
user_entry = tk.Entry(root):创建一个单行输入框,用于用户输入用户名。
密码部分:
password_label = tk.Label(root, text="密码:"):创建一个标签,显示文本 “密码:”,用于提示用户输入密码的位置。
password_entry = tk.Entry(root, show="*"):创建一个单行输入框,用于用户输入密码,并设置显示字符为 “*” 以保护密码的隐私。
登录按钮:
login_button = tk.Button(root, text="登录"):创建一个按钮,显示文本 “登录”,用户点击该按钮可能触发登录操作(此代码中未实现具体的登录逻辑)。
复选框部分:
remember_var = tk.IntVar():创建一个用于关联记住密码复选框的变量。
remember_checkbutton = tk.Checkbutton(root, text="记住密码", variable=remember_var):创建一个复选框,显示文本 “记住密码”,用户可以选择是否让程序记住密码,其状态由remember_var变量记录。
auto_login_var = tk.IntVar():创建一个用于关联自动登录复选框的变量。
auto_login_checkbutton = tk.Checkbutton(root, text="自动登录", variable=auto_login_var):创建一个复选框,显示文本 “自动登录”,用户可以选择是否让程序自动登录,其状态由auto_login_var变量记录。
总体流程
1、导入 Tkinter 库并将其重命名为tk。
2、创建主窗口并进行设置。
3、依次创建各个界面组件并添加到主窗口中进行布局。
4、最后启动主窗口的事件循环,使程序持续运行并等待用户交互。
参考代码:
$$