2
A
回答
0
下面是主要基於this anwer的SSCE。
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ListCell;
import javafx.scene.control.ListView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;
import javafx.scene.layout.Priority;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class SO extends Application {
static class XCell extends ListCell<String> {
HBox hbox = new HBox();
Label label = new Label("");
Pane pane = new Pane();
Button button = new Button("Del");
public XCell() {
super();
hbox.getChildren().addAll(label, pane, button);
HBox.setHgrow(pane, Priority.ALWAYS);
button.setOnAction(event -> getListView().getItems().remove(getItem()));
}
@Override
protected void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
setText(null);
setGraphic(null);
if (item != null && !empty) {
label.setText(item);
setGraphic(hbox);
}
}
}
@Override
public void start(Stage primaryStage) throws Exception {
StackPane pane = new StackPane();
Scene scene = new Scene(pane, 300, 150);
primaryStage.setScene(scene);
ObservableList<String> list = FXCollections.observableArrayList(
"Item 1", "Item 2", "Item 3", "Item 4");
ListView<String> lv = new ListView<>(list);
lv.setCellFactory(param -> new XCell());
pane.getChildren().add(lv);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
最重要的修改是該行
button.setOnAction(event -> getListView().getItems().remove(getItem()));
處的項目,這個單元代表從ListView
的項目列表中刪除。
+0
Thanx親愛的, Thanl You So很多 –
+0
Thanx親愛的, 非常感謝, –
+0
It Works ....... –
相關問題
- 1. 帶有刪除按鈕的Android ListView
- 2. PHP/SQL刪除按鈕的每一行
- 3. ListView與每個行中的添加和刪除按鈕android
- 4. 所有行在Gridview中都有一個刪除按鈕
- 5. 刪除帶有該詞的每一行
- 6. ListView上的刪除按鈕
- 7. 刪除GridView中每行的按鈕
- 8. ListView:單擊按鈕時它的所有者刪除一行
- 9. 刪除JavaFX按鈕填充?
- 10. 帶有textview和一個按鈕的listview
- 11. 刪除帶有列表項的按鈕
- 12. 帶按鈕的ListView
- 13. 刪除ListView元素刪除按鈕
- 14. 帶有每行按鈕的Html表
- 15. 爲表中的PHP每一行刪除按鈕
- 16. 爲數據網格中的每一行添加刪除按鈕
- 17. 帶有關閉按鈕的標籤JavaFX
- 18. WPF ListView每行上有按鈕
- 19. javafx listview與每個單元格中的按鈕
- 20. 如何使用按鈕從VB6 ListView中刪除一行(項目)?
- 21. 來自SQLite的ListView每個行都帶有EditText和CheckBox
- 22. 如何使用刪除按鈕刪除Expendable ListView中的項目
- 23. 刪除ListView項目上的按鈕
- 24. 刪除ListView項目上的按鈕
- 25. 在一個PHP表中每一行刪除按鈕
- 26. Android AdapterList每行刪除按鈕
- 27. 查詢結果的每一行都有單選按鈕
- 28. 每行都帶有textarea?
- 29. 如何爲LIstView中的每一行添加一個按鈕?
- 30. 刪除JavaFX ListView邊框
我如何設置刪除行的操作? –
任何人都可以幫助我嗎? –
爲你的ListView創建自定義的'ListCell'和'setCellFactory()'。 – MBec