2016-08-28 2 views
0
Button btn=new Button("Click Me"); 
    Button btn2=new Button("Click"); 
    btn2.setOnAction(e->System.exit(0)); 
    btn.setOnAction(new EventHandler<ActionEvent>(){ 


     public void handle(ActionEvent action){ 
      System.out.println(5); 
     } 
    }); 
    btn2.relocate(0, 0); 
    StackPane root=new StackPane(); 
    root.getChildren().add(btn); 
    root.getChildren().add(btn2); 
    Scene sene=new Scene(root,500,265); 
    primaryStage.setScene(sene); 
    primaryStage.show(); 

버튼을 움직이고 위 코드를 사용하고 싶지만 버튼을 움직일 수 없습니까? 코드의 문제점은 무엇이며 다른 방법은 무엇입니까?javafx에서 움직이는 버튼 또는 다른 점은 무엇입니까?

+1

확실하지를 사용 여기에 대해서. 그러나 대답은 다음과 같을 수 있습니다 :'StackPane '은 관리되는 자식의 위치를 ​​스스로 결정하는 레이아웃입니다. 즉, 레이아웃 펄스 중에는 이전에 할당 된'layoutX'에 관계없이 자식이 가운데에 배치됩니다. 및'layoutY' ('relocate '에 의해 수정 됨)를 포함합니다. 모든 어린이들의 위치를 ​​직접 결정하려면'창 '을 사용하십시오. 선택된 자식들의 위치를 ​​막기 위해서,이 자식들에 대해'managed'를'false'로 설정하십시오. 'StackPane.setAlignment (btn2, Pos.TOP_LEFT)'이이 경우에도 작동 할 수 있습니다 ... – fabian

답변

0

대답은 :

http://docs.oracle.com/javafx/2/animations/jfxpub-animations.htm

자바 FX 애니메이션에 대한 준비가 라이브러리를 가지고있다.

예 (사각형이 퇴색됩니다) : 코드에서

final Rectangle rect1 = new Rectangle(10, 10, 100, 100); 
rect1.setArcHeight(20); 
rect1.setArcWidth(20); 
rect1.setFill(Color.RED); 

... 

FadeTransition ft = new FadeTransition(Duration.millis(3000), rect1); 
ft.setFromValue(1.0); ft.setToValue(0.1); 
ft.setCycleCount(Timeline.INDEFINITE); 
ft.setAutoReverse(true); 
ft.play(); 

당신은 아마 TranslateTranstition이 필요하거나 당신이 요구하는지 excatly 무엇 translateXtranslateY 방법

관련 문제