2016-04-09 45 views
1

2種類のシーンを切り替える:JavaFXのシーンを動的に切り替える

シーン1:別の画像を読み込むScrollPane。

シーン2:ステージは透明であり、シーンに復帰するための唯一の1のボタンがあります。1.

I'veそれだけでシーンごとに異なるFXMLを持って、新しいシーンを毎回作成を行うことができたIそれらを切り替えます。

私は、シーン1、シーン2から切り替えたときに問題があり、シーン1にロードされているすべての画像があり(It's - 私はむしろ「ロード」シーン1よりも新しいシーンを作成すると明らかに。

ではありません?

は私が1

シーン1

public class ControllerImpl implements Initializable, ControlledScreen { 
ScreensController myController; 
public void initialize(URL url, ResourceBundle rb) { 
} 
public void setScreenParent(ScreensController screenParent){ 
    myController = screenParent; 
} 
@FXML 
private void goToScreen2(ActionEvent event) throws Exception{ 
    try { 
     Stage primaryStage = (Stage) hideStage.getScene().getWindow(); 
     FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/arrow.fxml")); 
     Parent root1 = fxmlLoader.load(); 
    primaryStage.setScene(new Scene(root)); 
    } 
    catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 
@FXML 
public javafx.scene.control.Button hideStage; 

}

SCENE2シーンにシーン2から急がとき、すでにロードされた画像を維持する方法はあります:あなたが好きなあなたのステージのシーンを切り替えることができます

答えて

1
public class ControllerArrow implements Initializable{ 

ScreensController myController; 

@Override 
public void initialize(URL url, ResourceBundle rb) { 
} 

public void setScreenParent(ScreensController screenParent){ 
    myController = screenParent; 
} 

@FXML 
public javafx.scene.control.Button showStage; 

@FXML 
private void goToScreen1(ActionEvent event) throws Exception{ 

    try{ 

     Stage stage = (Stage) showStage.getScene().getWindow(); 

     FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/sample.fxml")); 
     Parent root = fxmlLoader.load(); 

    } 
    catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

}:あなたがあなたのシーンのインスタンスを持っているとき

Stage stage = (Stage) scene.getWindow(); 
stage.setScene(yourScene); 

だから、あなたはあなたのステージ

+0

おかげに適用することができますあなたの応答のために。前のシーンをどのように選択できますか?私は2つの異なるコントローラを持っています。メインのシーンを定義する必要はありますか? –

+0

シーンをインスタンス化するにはどうすればいいですか?完全なコード例が参考になります。 – jns

+0

私は質問にコードを追加しました。 –

関連する問題