我正在用JavaFX开发电影院座位预订系统。我正在使用按钮作为座椅。
我想在单击时更改其颜色,这意味着已选择座位,而在再次按下时则将其颜色恢复为原始颜色,这意味着已取消选择座位。
我已附上代码示例,其中按钮的原始颜色为蓝色,并且在单击时将其颜色更改为红色,但是我还想在再次单击时将其颜色更改为蓝色
button.setOnAction(event -> {
button.setStyle("-fx-background-color: Red");
});
答案 0 :(得分:2)
每次调用setOnAction
时,您应该检查当前样式是否为“红色”,如果是,则将其更改为“蓝色”,否则,如果当前样式为“蓝色”,则将其更改为“红色”
在代码中,它看起来像:
button.setOnAction(event -> {
if("-fx-background-color: Red".equals(button.getStyle())){
button.setStyle("-fx-background-color: Blue");
}else{
button.setStyle("-fx-background-color: Red");
}
});