在包裝中啟動獨立應用程式
背景:
您有多個獨立應用程式( myClass1、myClass2 等)位於同一個Java 套件中,並希望彼此獨立地啟動它們。然而,簡單地呼叫另一個應用程式的 launch() 方法會導致錯誤,因為重複的應用程式啟動被禁止。
解決方案:
雖然可以直接使用在Application 子類別的新實例上呼叫start(...) ,由於以下幾個原因,不鼓勵這樣做:
重新建構您的設計:
要解決此問題,請考慮重建您的設計,以便應用程式模組不是應用程式子類,而是常規類。這允許您為每個模組創建單獨的獨立應用程序,或將它們實例化為更大應用程式的一部分。
獨立應用程式範例:
public class FirstApplication extends Application { @Override public void start(Stage primaryStage) { Scene scene = new Scene(new FirstModule().getView()); primaryStage.setScene(scene); primaryStage.show(); } }
複合模組範例:
public class CompositeModule { // ... public void showFirstModule() { Scene scene = new Scene(new FirstModule().getView()); Stage stage = new Stage(); stage.initOwner(this.getClass()); // Must use a JavaFX class, not an Application class stage.setScene(scene); stage.show(); } // ... }
透過遵循此方法,您可以創建並啟動同一包中的多個獨立應用程序,同時遵守JavaFX 最佳實踐。
以上是如何從同一個套件啟動多個獨立的 JavaFX 應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!