最近,我一直在学习Java,现在遇到了JavaFX。我的问题是,如何通过单击Text
来更新/更改Button
?`
public class Main extends Application {
Scene start;
int counter = 0;
@Override
public void start(Stage primaryStage) throws Exception{
BorderPane startLayout = new BorderPane();
Button testButton = new Button("+1");
testButton.setOnAction(event -> {
counter++;
System.out.println("counter: " + counter);
});
Text test = new Text("Counter: " + counter);
test.setFont(Font.font("Consolas", 25));
test.setFill(Color.CORNFLOWERBLUE);
startLayout.setTop(test);
startLayout.setCenter(testButton);
start = new Scene(startLayout, 1280, 720);
primaryStage.setTitle("Test");
primaryStage.setScene(start);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
这里发生的是,我在屏幕的左上角看到了Text
,在屏幕中间看到了Button
。 Text
显示“ Counter:0”。当我按下Button
时,我希望文本显示“ Counter:1”或“ Counter:2” ...取决于我按下Button
的次数,但是当我按下时,什么也没有发生,计数器在窗口中停留在0。我究竟做错了什么?或者,还有其他方法吗?
答案 0 :(得分:0)
您是否曾尝试通过test.setText("Counter" + counter);
来按下按钮?