簡體   English   中英

如何取消 tkinter 鍵綁定事件

[英]How to cancel a tkinter key bind event

我有一個 tkinter treeview。我正在響應對一個項目的點擊。 如果該項目不是唯一的,我想取消選擇並留在當前項目上。

我使用的代碼是:

 def select_item(self, event, *args) -> None: item = self.index.identify_row(event.y) current_idx = self.index.index(item) if item: if self.current_item_index >= 0: if self.save_item(self.current_item_index): print("UNIQUE") self.current_item_index = current_idx self.load_item(current_idx) else: print("NOT UNIQUE", self.current_item_index) child_id = self.index.get_children()[self.current_item_index] self.index.focus(child_id) self.index.selection_set(child_id)

然而,即使在測試失敗並且我重新關注當前項目而不是新選擇之后,新項目仍然被選中。

例如; 說我目前正在編輯樹視圖中的第四個項目。 如果相關數據不是唯一的,那么如果有人選擇了第七項,我想忽略該選擇並留在第四項上。

如果您綁定的 function 返回字符串"break" ,則將取消對該事件的任何進一步處理。 這包括取消事件的默認行為。

暫無
暫無

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

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