【问题标题】:JavaFX BorderPane vs Pane hiding LabelsJavaFX BorderPane 与窗格隐藏标签
【发布时间】:2016-02-21 22:59:35
【问题描述】:

我有一个使用窗格、路径和标签对象的工作地图。我将几个路径和标签对象放在窗格上。 Path 对象代表国家,Label 对象代表其首都。所以它显示了一个国家,中间是一个标签,其中有一个绑定到标签的字符串对象。

count.textProperty().bind(system.getNations().get(nameNoSpace).getTroopCount().asString());

当使用BorderPane 而不是窗格时,标签对象突然停止显示?

知道是什么原因吗?
BorderPane 是否隐藏了标签?

谢谢

【问题讨论】:

  • BorderPane 在哪里发挥作用?如何在其中添加内容?请提供相关代码/FXML。
  • BorderPane root = new BorderPane();路径国家 = 新路径(nameNoSpace); MoveTo moveTo = new MoveTo(); moveTo.setX(Double.parseDouble(parts[i])); moveTo.setY(Double.parseDouble(parts[i+1])); national.getElements().add(moveTo); ... root.getChildren().add(nation); ... 标签计数 = 新标签();计数.setLayoutX(x); count.setLayoutY(y); count.textProperty().bind(system.getNations().get(nameNoSpace).getTroopCount().asString()); count.setOnMouseClicked(me -> mouseClickHandler(me)); root.getChildren().add(count);
  • 这是不可读的。请将代码放在您的问题中,而不是在评论中。

标签: javafx borderpane


【解决方案1】:

您不能使用root.getChildren().add(node) 方法将子级添加到BorderPane。 要将对象添加到 BorderPane 您需要使用其他方法,例如

setCenter(node);
setTop(node);
setBottom(node);
setLeft(node);
setRight(node);

有关更多信息,请参阅BorderPane 文档。

如果您需要使用getChildren().add() 方法,您可以在BorderPane 的中心插入一个Pane,并在Pane 中添加国家。

【讨论】:

  • 如果有效,请accept my answer 表示已解决。这也会给你2点声望。 @HGOHGO
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-20
  • 1970-01-01
  • 2012-02-22
相关资源
最近更新 更多