Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Melancarkan Berbilang Aplikasi JavaFX Kendiri daripada Pakej yang Sama?

Bagaimanakah Saya Boleh Melancarkan Berbilang Aplikasi JavaFX Kendiri daripada Pakej yang Sama?

DDD
DDDasal
2024-12-02 05:30:10540semak imbas

How Can I Launch Multiple Standalone JavaFX Applications from the Same Package?

Memulakan Aplikasi Kendiri Dalam Pakej

Latar Belakang:

Anda mempunyai berbilang aplikasi kendiri ( myClass1, myClass2, dsb.) dalam pakej Java yang sama dan ingin melancarkannya secara bebas daripada setiap lain. Walau bagaimanapun, hanya dengan memanggil kaedah pelancaran() aplikasi lain mengakibatkan ralat kerana pelancaran aplikasi berulang dilarang.

Penyelesaian:

Walaupun boleh digunakan secara langsung panggilan untuk memulakan(...) pada contoh baharu subkelas Aplikasi, ia tidak digalakkan untuk beberapa sebab:

  • Ia bertentangan dengan tujuan kaedah permulaan(...) yang dimaksudkan, iaitu menggantikan kaedah utama dalam aplikasi Java tradisional.
  • Setiap subkelas Aplikasi mewakili keseluruhan aplikasi yang sedang berjalan, menjadikan berbilang kejadian sememangnya tidak boleh diguna semula.

Mengabina Semula Anda Reka Bentuk:

Untuk menyelesaikan isu ini, pertimbangkan untuk menstruktur semula reka bentuk anda supaya modul aplikasi bukan subkelas Aplikasi tetapi kelas biasa. Ini membolehkan anda membuat aplikasi kendiri yang berasingan untuk setiap modul atau menjadikannya sebagai sebahagian daripada aplikasi yang lebih besar.

Contoh Aplikasi Kendiri:

public class FirstApplication extends Application {

    @Override
    public void start(Stage primaryStage) {
        Scene scene = new Scene(new FirstModule().getView());
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

Komposit Contoh Modul:

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();
    }

    // ...
}

Dengan mengikuti pendekatan ini, anda boleh mencipta dan melancarkan berbilang kendiri aplikasi dalam pakej yang sama, sambil mematuhi amalan terbaik JavaFX.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melancarkan Berbilang Aplikasi JavaFX Kendiri daripada Pakej yang Sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn