在两个Tkinter小部件之间拆分键盘输入

2024-04-26 11:20:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有树视图和入口小部件的窗口。我想能够写在条目小部件,同时仍然能够使用向上/向下箭头导航树视图。我尝试过几种方法:

  1. 将所有键盘事件发送到两个小部件(我尝试过使用自定义绑定标签,但没有成功)
  2. 使用条目<Up><Down>绑定来导航treeview(我还没有找到一种简单的方法来上下移动具有多个父级和子级的树,例如文件目录)
  3. 使用根<Key>绑定有选择地向entry小部件发送原始的keycodes,这样backspace和左/右箭头之类的东西就可以按预期工作了(我还没有遇到直接向entry小部件发送keycodes/事件的方法)

Tags: 方法视图部件事件条目标签箭头键盘
1条回答
网友
1楼 · 发布于 2024-04-26 11:20:14

你的#2是正确的方法。您必须编写计算如何在树上上下移动的方法。您可以获取当前选定的项,然后使用.next()方法获取同一父级的下一个子级。如果它返回一个空字符串,则可以获取父级(通过调用.parent())并对其调用.next()。您可以递归地一直这样做,直到到达树的末尾(父节点是根节点,.next()返回空字符串)。你知道吗

相关问题 更多 >