Tkinter (43) 鍵盤輸入的部件聚焦 Focus

Jason990420發表於2020-08-28

部件聚焦 Focus 的說明

  • 使用 TAB 按鍵, 聚焦處會延著部件的順序往後移動到另一個部件, shift-TAB 反向移動聚焦處.
  • 部件聚焦時, 會有所謂的 focus highlight 以顯示該部件正聚焦中, 部件的聚焦寛度不為 0, 才能看得到聚焦外框.
  • 在 Text 部件, 因為可以接受 TAB 鍵, 所以往後移動聚焦, 需要使用 ctrl-TAB 鍵.
  • Button 部件聚焦時, 可以接受空白鍵作為點選動作
  • Checkbutton 部件聚焦時, 可以接受空白鍵作為狀態的切換鍵
  • Listbox 部件聚焦時, 可以接受上下鍵來上下捲動, pgup/Pgdn來翻頁, 空白鍵來選擇或不選擇
  • Radiobutton 部件聚焦時, 可以接受空白鍵作為設定鍵
  • Scale 部件聚焦時, 水平/垂直部件可以接受左右/上下鍵來響應
  • Scrollbar 部件聚焦時, pgup/Pgdn來翻頁, 水平/垂直部件可以接受左右/上下鍵來響應.

聚焦的順序決定

  • 子部件在父部件中建立的順序
  • 先父部件, 再子部件
  • 使用事件處理, 自行改變聚焦的順序

ttk 部件的聚焦

在 ttk 模組中, 除了以下的部件外, 所有的部件, 都預設為會聚焦

  • Frame
  • Label
  • LabelFrame
  • PanedWindow
  • Progressbar
  • Scrollbar
  • Separator
  • Sizegrip

待續

本作品採用《CC 協議》,轉載必須註明作者和本文連結
Jason Yang

相關文章