gpt4 book ai didi

treeview - 在 TreeView 中更新 JavaFX 节点

转载 作者:行者123 更新时间:2023-12-04 05:56:22 27 4
gpt4 key购买 nike

我开始使用 javafx。我有一个问题。我有一个树 View ,其中节点通过外部命令改变了他的位置,但它只是看不到树。我必须最小化父级并重新展开才能看到效果。
Altem 对该树 View 的任何建议都可以作为代码刷新。

示例代码:

public Boolean SobeNodo()
{
TreeItem<TreeNodo> oNodoSel = this.getSelectionModel().getSelectedItem();

if (oNodoSel != null)
{
TreeItem<TreeNodo> oNodoPai = oNodoSel.getParent();
if (oNodoPai != null)
{
int nIndex = oNodoPai.getChildren().indexOf(oNodoSel);
if (nIndex > 0)
{
oNodoPai.getChildren().removeAll(oNodoSel);

oNodoPai.getChildren().add(nIndex - 1, oNodoSel);

return true;
}
}
}
return false;
}

抱歉我的英语并感谢您花费的时间。

最佳答案

您在 TreeView 中遇到问题:http://javafx-jira.kenai.com/browse/RT-20090

现在您可以使用下一个解决方法(对于树的第二次操作实际上只是 50 毫秒的延迟):

if (nIndex > 0) {
oNodoPai.getChildren().removeAll(oNodoSel);

TimelineBuilder.create().keyFrames(
new KeyFrame(Duration.millis(50), new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
oNodoPai.getChildren().add(nIndex - 1, oNodoSel);
}
})).build().play();

return true;
}

关于treeview - 在 TreeView 中更新 JavaFX 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9470725/

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