簡體   English   中英

如何使用鍵盤獲取tkinter treeview選定的行值?

[英]How to get tkinter treeview selected row values using keyboard?

基於對來自另一個用戶的先前問題回答 ,我能夠在鼠標釋放時獲得每行的正確單元格值,將該事件綁定到selectItem()函數,如此處所述。

def selectItem(self, event):
    curItem = self.tree.focus()
    print(curItem)

我還試圖為Up / Down鍵添加鍵盤綁定,但我沒有得到實際選中的行。

self.tree.bind('<ButtonRelease-1>', self.selectItem)
enter code here`self.tree.bind('<Up>', self.selectItem) 
self.tree.bind('<Down>', self.selectItem) 

相反,當我按向上或向下時,selectItem函數正在打印上一個選定的項目。 我的意思是,如果我選擇了第3行並按了向上鍵,我仍然會得到第3行,但我想要的是獲得第2行。如果我按下向下鍵,我想要第4行,但我仍然得到第4行的內容。但是,藍色行選擇顏色正在正確更新。 似乎某種程度上計算機是通過“讀取”當前所選位置然后向上或向下移動來開始的。 但是我希望它首先移動選擇並且僅“讀取”當時的當前位置。 實現這一目標的最佳方法是什么?

您可以在<<TreeviewSelect>>上綁定。 綁定到<<TreeviewSelect>>將允許您在選擇(樹視圖)后設置項目。 否則,綁定到窗口小部件與窗口小部件類上的綁定可以相互覆蓋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM