我正在嘗試從活動列表中檢索一些項目,以便使用 JavaFX 顯示它們,但同時我也希望能夠在單擊項目按鈕時刪除這些項目。如何區分我單擊了哪個按鈕以刪除正確的行?我正在嘗試將 lambda 表達式分配給按鈕,但顯然它在 for 循環中不起作用。關于如何解決這個問題的任何建議? gridPane = new GridPane(); String path = "image.png"; items = new ArrayList<>(); items.add("Activity 1"); items.add("Activity 2"); items.add("Activity 3"); for (int i=0; i<items.size(); i++) { gridPane.add(new Text(items.get(i)), 1, i); gridPane.add(new JFXButton("", new ImageView(path)),2,i); (JFXButton)gridPane.setOnMouseClicked(e -> deleteActivity(gridPane.getRowIndex(i))); }
1 回答

倚天杖
TA貢獻1828條經驗 獲得超3個贊
我假設你想要:
JFXButton button = new JFXButton("", new ImageView(path);
gridPane.add(button),2,i);
button.setOnMouseClicked(e -> deleteActivity(gridPane.getRowIndex(i)));
添加回答
舉報
0/150
提交
取消