JavaFX点击按钮时如何添加存储自定义颜色到方格并循环更新最近两个颜色
你只需要补全「更改颜色」按钮的点击事件代码即可实现需求,完整的点击事件实现如下:
clbtn.setOnAction(event -> { // 暂存第一个方格当前的颜色 Color tempColor = (Color) rectangle.getFill(); // 将第一个方格的旧颜色移到第二个方格 rectangle1.setFill(tempColor); // 将当前滑块调制的新颜色填充到第一个方格 rectangle.setFill(circle.getFill()); });
这段逻辑天然满足你要求的循环规则:
- 第一次点击时,第一个方格的初始灰色会移到第二个方格,新颜色填充到第一个方格
- 后续每一次点击,都会先把第一个方格的上一次颜色转移到第二个方格,再将最新调制的颜色放入第一个方格,始终只保留最近两次选择的自定义颜色
额外优化提示:你现有代码中已经将两个矩形添加到了grid布局中,后面重复调用root.getChildren().add(rectangle);和root.getChildren().add(rectangle1);属于冗余代码,可以删除,不影响功能运行。
内容的提问来源于stack exchange,提问作者old-boysenberry
相关产品推荐
相关产品推荐

