我正在尝试从活动列表中检索一些项目,以便使用 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
提交
取消