【发布时间】:2017-07-31 12:25:21
【问题描述】:
我终于完全切换到 JavaFX。
我非常热衷于按键功能。
是否有与您在 Swing 中找到的(非常好的)等效的热键架构?在 JavaFX 文本控件对象的情况下它是如何工作的?我想如果我看看javafx.scene.control.TextInputControl,一切都会变得清晰。当然也尝试过谷歌搜索。
但我一点也不聪明。大概在编辑文本时必须有一个您需要的最小击键绑定的来源?是否也有类似的层次结构?
使用 Swing,每个 JComponent 可以使用 1 个 ActionMap 和 3 个 InputMaps(并且所有这些都可以有“祖先”映射)。 3 个InputMap“类型”由JComponent 常量WHEN_FOCUSED、WHEN_IN_FOCUSED_WINDOW 和WHEN_ANCESTOR_OF_FOCUSED_COMPONENT 确定,这些名称非常不言自明。我真的很想知道有多少 Swing 用户熟悉所有这些东西,但就个人而言,作为键盘狂热者,我广泛使用此功能。
能够使用setOnKeyPressed 将键绑定附加到给定的javafx.scene.Node 大概相当于使用WHEN_FOCUSED Swing 功能......但是我想知道其他两个类别呢?它们在当前的 JavaFX 实现中根本不存在吗?
最终,对于 Swing,在幕后显然有一个非常复杂的机制,涉及击键被“传递”JComponent 对象的层次结构,直到它们被 InputMap“捕获”(或没有).. ..大概JavaFX中一定有这样的东西。有章有节就好了……
【问题讨论】:
-
你在寻找类似this的东西吗?
-
@ToddSewell 谢谢...开始回答,是的...
标签: java swing user-interface javafx hotkeys