gpt4 book ai didi

java - 如何禁用节点而不在 JavaFX 中将其灰显?

转载 作者:技术小花猫 更新时间:2023-10-29 11:46:36 28 4
gpt4 key购买 nike

我的问题是能够禁用 Node,这样用户就无法在我打印它时与其进行交互。但出于同样的原因,我需要整个 Node(在本例中为 GridPane)及其所有子节点(主要是按钮和标签)不能与用户,而打印正在进行中。

当我写 setDisable 时,它使整个 Node 变灰,但我想保留 Node 的原始颜色和状态> 当它被禁用时。

有没有办法做到这一点?通过 disableProperty 或其他方式,对我来说并不特别重要。这里的关键是您不应该能够与 Node 进行交互。

提前致谢

最佳答案

我找到了答案:

来自@awksp“JavaFX 中的所有节点都有一个 setMouseTransparent() 方法,详见此处,其中 mouseTransparent 属性为:

如果为 true,则此节点(及其所有子节点)对鼠标事件完全透明。选择鼠标事件的目标时,mouseTransparent 设置为 true 的节点及其子树将不被考虑...."

然后我进一步使用了 setFocusTraversable(false),这样您就无法通过其他方式聚焦节点来与节点交互

感谢@awksp 的帮助: https://stackoverflow.com/a/24164911/6197978

关于java - 如何禁用节点而不在 JavaFX 中将其灰显?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38326362/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com