Python Tkinter滚动条在选择后跳转到列表框的顶部

Python Tkinter滚动条在选择后跳转到列表框的顶部,python,tkinter,listbox,scrollbar,Python,Tkinter,Listbox,Scrollbar,我有一个用于列表框的滚动条,当选择超过列表框的原始视图时(您向下滚动以选择某些内容),在选择之后,滚动条会跳到列表框的顶部。我希望列表框保持在它当前所在的位置,与任何其他通用滚动条的工作方式相同。下面是列表框的定义 def createListBox(self): self.frame = Frame(self)#Frame that holds the scrollbar and listbox self.scrollbar = Scrollbar(self.frame)

我有一个用于列表框的滚动条,当选择超过列表框的原始视图时(您向下滚动以选择某些内容),在选择之后,滚动条会跳到列表框的顶部。我希望列表框保持在它当前所在的位置,与任何其他通用滚动条的工作方式相同。下面是列表框的定义

def createListBox(self):
    self.frame = Frame(self)#Frame that holds the scrollbar and listbox
    self.scrollbar = Scrollbar(self.frame)
    self.waiver_menu = Listbox(self.frame, width = 20, height = 9, yscrollcommand = self.scrollbar.set)
    self.scrollbar.config(command = self.waiver_menu.yview)
    self.frame.grid(row = self.row_count, column = self.col_count, rowspan = 3)
    self.waiver_menu.grid(row = self.row_count, column = self.col_count, rowspan = 3)
    self.scrollbar.grid(row = self.row_count, column = self.col_count+1, rowspan = 3, sticky = N+S+W)

    self.waiver_menu.bind("<Double-Button-1>", self.chosen)
def createListBox(self):
self.frame=frame(self)#保存滚动条和列表框的框架
self.scrollbar=滚动条(self.frame)
self.frame\u menu=Listbox(self.frame,宽度=20,高度=9,yscrollcommand=self.scrollbar.set)
self.scrollbar.config(命令=self.scrollbar\u menu.yview)
self.frame.grid(行=self.row\u计数,列=self.col\u计数,行跨度=3)
self.deference\u menu.grid(行=self.row\u count,列=self.col\u count,行跨度=3)
self.scrollbar.grid(行=self.row\u计数,列=self.col\u计数+1,行跨度=3,粘性=N+S+W)
self.deference\u menu.bind(“,self.select)

我发现我在另一个位置通过删除和插入新项目来刷新列表框,这就是为什么它会让您回到顶部。这个列表框的定义和滚动条的实现是有效的

对我有用。Windows10,python 3.5。双击第20个项目,将其选中,列表框视图仍在第20个项目上。请提供更多代码。这个函数不足以解决您的问题,因为它在我这方面也很好。问题可能在代码的其他地方。请提供。抱歉,代码不足。谢谢你的帮助。我不认为它在其他地方,但我忘了我正在刷新另一个位置的列表框,这导致滚动条跳到顶部。