如何解决如何将 tkinter 列表框选择的索引返回到调用绑定的函数?
我正在尝试编写一个程序,将所选列表框项的索引返回给调用绑定函数的函数。
以下程序只是在单击项目后在 get_index 函数中打印所选项目的索引;但是,我希望索引返回到主函数,而不是包含在 get_index 函数中。我正在努力完成的事情有可能吗?
import tkinter as tk
def get_index(event):
selection = event.widget.curselection()
if selection:
index = selection[0]
print(index) # Want to return here instead of print
else:
pass
def main():
root = tk.Tk()
root.geometry("300x150")
my_list = tk.ListBox(root)
my_list.pack(pady=15)
options = [
"Monday","Tuesday","Wednesday","Thursday",]
for option in options:
my_list.insert("end",option)
my_list.bind("<<ListBoxSelect>>",get_index)
root.mainloop()
if __name__ == "__main__":
main()
解决方法
如何将 tkinter 列表框选择的索引返回到调用绑定的函数?
简短的回答是:你不能。
绑定函数不会在进行绑定的函数的上下文中调用。绑定函数返回的任何内容都将被 tkinter 忽略。
由于您没有使用类,因此您唯一的选择是使用全局变量。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。