2017-06-30 117 views
0

我有一個滾動條列表框,當選擇通過列表框的原始視圖(向下滾動以選擇內容)時,滾動條跳轉到列表框的頂部。我希望列表框停留在當前位置,以及其他常規滾動條的工作方式。這裏的列表框Tkinter滾動條跳轉到選擇列表框後頂部

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) 
+0

適合我。 Windows 10,python 3.5。雙擊第20項,它選中它,並且列表框視圖仍然在第20項上。 –

+1

請提供更多代碼。這個功能還不足以解決您的問題,因爲它在我的工作方面也能正常工作。問題可能在代碼中的其他地方。請提供[最小,完整和可驗證示例](https://stackoverflow.com/help/mcve)。 –

+0

抱歉代碼不正確。謝謝你的幫助。我沒有想到它是在別的地方,但我忘記了我在刷新列表框的另一個位置,導致滾動條跳到頂部。 –

回答

0

我發現我被刪除和插入新的項目這就是爲什麼它帶你回到頂端刷新在其他位置列表框的定義。帶滾動條實現的列表框的這個定義起作用!