버튼을 클릭하면 위치가 변경됩니다.JavaFX에서 노드의 위치를 명시 적으로 지정합니다.
그러나 마우스를 움직이면 버튼이 장면 중앙으로 돌아옵니다. 왜?
나는 다음과 같은 코드를 가지고 : 나는에 버튼을 배치 StackPane 대신 AnchorPane를 사용할 때
public class HolaMundo extends Application {
Button btn;
Scene scene;
@Override
public void start(Stage primaryStage) {
btn = new Button();
btn.setText("Hola Mundo");
StackPane root = new StackPane();
root.getChildren().add(btn);
scene = new Scene(root, 300, 250);
primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.show();
scene.setOnMouseMoved(new EventHandler<MouseEvent>(){
@Override
public void handle(MouseEvent t) {
btn.setText(String.valueOf(t.getX()));
}
});
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
btn.setLayoutX(Math.random() * (300 - btn.getWidth()));
btn.setLayoutY(Math.random() * (250 - btn.getHeight()));
}
});
}
public static void main(String[] args) {
launch(args);
}
}
현재 사용중인 JavaFX의 버전은 무엇입니까? JavaFX 8에서는 버튼이 전혀 움직이지 않습니다. – assylias