我正在尝试在 javaFX 中做“memoryGame”。我现在正在处理的是在单击此按钮后,使用 CSS 在一个函数中更改按钮的背景两次。
在这个游戏中,我创建了一个 GridPane 并在每个单元格中放置了带有图片的按钮,每张图片都有两个按钮。在它上面我放了另一个空按钮。如果我点击一个按钮,它会变成透明的,所以我可以看到图片。然后我点击了另一个按钮,同样的事情发生了。现在,如果图片相同,我会得到一分,透明度不会改变,但如果图片不同,程序会等待一秒钟,然后将两个按钮都更改为它们的主要阶段(不透明)。
问题是,如果我更改按钮的样式,请稍等一下,然后再更改一次,按钮在此功能期间不会更改其样式,但会在功能结束后发生。所以我们看不到第一个样式,只能看到最后一个。
我发送的代码是简化版本,仅对一个按钮“有效”。
public void changeTransparent(ActionEvent event) {
butCver01.setStyle("-fx-background-color: transparent");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {}
butCver01.setStyle("-fx-background-color: green");
}
现在,当我们单击 butCver01 时,一秒钟后它将变为绿色。
千巷猫影
相关分类