簡體   English   中英

JavaFX - 如何從AnchorPane中刪除特定節點

[英]JavaFX - How to delete a specific Node from an AnchorPane

我正在使用SceneBuilder 8.0.0和JavaFX 8。
我有一個Button btn和一個Label lbl附加到AnchorPane ap
當應用程序啟動時, btnlbl附加到ap

如何刪除其中一個節點? (我只知道clear()方法從ap刪除所有節點)。 謝謝。

在JavaFX中,可以使用.getChildren()跟隨.remove(Object o)節點(例如AnchorPane )中刪除節點。

參考

因此,如果您直接引用這些節點,則可以使用以下代碼從AnchorPane刪除Button

ap.getChildren().remove(btn);

抬頭

如果由於某種原因,你沒有對Button btn的引用,你可以使用lookup(String selector)來查找和刪除它,如下所示:

ap.getChildren().remove(ap.lookup('.button'));

FXML

或者最后,因為你正在使用SceneBuilder(以及fxml),你還可以確保你連接了一個Controller並為你的Button分配一個id來獲取引用並刪除它,如下所示:

// ... somewhere in your class
@FXML
private Button myButtonId;

// ... somewhere in a method
ap.getChildren().remove(myButtonId);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM