默认情况下,tkinter一次只允许一个窗口小部件保留选择。因此,当您在第二个列表框中选择某项时,将取消选择在第一个列表框中选择的项目。这将导致您的函数被调用。发生这种情况时,
self.lb1.curselection()[0])由于选择为空,将引发错误。
一个简单的解决方案是,当您在第二个列表框中选择某些内容时,使选择在第一个列表框中保持不变,这是将两个列表框的
exportselection选项
False都设置为。
self.lb1 = tk.Listbox(self, exportselection=False)...self.lb2 = tk.Listbox(self, bg='orange', exportselection=False)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)