python - 特金特。更改页面并同时运行另一个功能的按钮
问题描述
是否可以使按钮 3 同时具有更改为第二页的命令以及从文本框中清除文本的命令?
def __init__(self, parent, controller):
global entry, i, T
tk.Frame.__init__(self, parent)
self.controller = controller
S = tk.Scrollbar(self)
T = tk.Text(self)
S.pack(side=tk.RIGHT, fill=tk.Y)
T.pack(fill=tk.Y)
S.config(command=T.yview)
T.config(yscrollcommand=S.set)
T.insert(tk.END, "Available Days to take Annual Leave:\n%s\n" % DaysInWeek)
label = tk.Label(self, text="Do you want Annual Leave?")
label.pack()
entry = tk.Entry(self)
entry.pack()
button2 = tk.Button(self, text="Go", command=self.Annualinput)
button2.pack()
button3 = tk.Button(self, text="Return",
command=lambda: controller.show_frame("PageTwo"))
button3.pack()
我希望 button3 拥有的另一个命令是
def clear(self):
T.delete('1.0', tk.END)
我从tkinter 的两个帧之间的 Switch 中获取了切换页面代码
解决方案
分配一个回调函数来做这两件事:
def button3_callback(*args):
T.delete('1.0', tk.END)
controller.show_frame("PageTwo")
确保在函数内部定义此函数,__init__()
否则T
将超出范围。
推荐阅读
- android - 在字符串中获取计时器的时间?
- julia - JuliaDB 从字符串中选择一列,而不是符号
- javascript - 如何使用 Ramda 从对象创建属性/值数组?
- r - 并行化应用于 parRapply
- css - 无限自上而下的纯 CSS 照片横幅,堆叠在第一张图片上
- javascript - Angular 应用程序转移到版本 6 错误:“未定义全局”
- g++ - 在 Ubuntu 18.04 上构建共享对象时嵌入 RPATH 而不是 RUNPATH
- java - hibernate.connection.provider_disables_autocommit 不工作
- python-3.x - 循环搜索 Imap / Python3 / Gmail
- postgresql - 如何将查询更改为仅保留叶节点