
Pengenalan
JavaFX ialah perpustakaan popular untuk mencipta antara muka pengguna grafik yang kaya untuk aplikasi moden. Salah satu daripada banyak ciri berkuasanya ialah keupayaan untuk memisahkan logik aplikasi kepada pengawal, menjadikan kod lebih teratur dan lebih mudah untuk diselenggara. Walau bagaimanapun, kadangkala pembangun mungkin perlu bekerja dengan tetingkap secara langsung, dan di sinilah terletaknya cabaran untuk mendapatkan tetingkap daripada pengawal. Kami akan menelitinya dengan penyelesaian kami yang menggunakan Masa latihan kelas sambil mengambil kesempatan daripada fleksibiliti dan serba boleh JavaFX.
Mendapatkan Tetingkap dalam Pengawal
Teras penyelesaian terletak pada kelas Stage – salah satu blok binaan utama JavaFX. Stage mewakili tetingkap peringkat atas dalam aplikasi JavaFX dan terdiri daripada kawasan visual untuk adegan aplikasi anda. Untuk mendapatkan tetingkap dalam pengawal, anda harus menyerahkan rujukan peringkat kepada pengawal sebaik sahaja ia dibuat.
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
FXMLLoader loader = new FXMLLoader(getClass().getResource("MainWindow.fxml"));
Parent root = loader.load();
MainWindowController controller = loader.getController();
controller.setWindow(primaryStage);
primaryStage.setTitle("Sample Application");
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Pertama, FXMLLoader memuatkan fail FXML, yang menerangkan antara muka pengguna aplikasi. Kemudian, menggunakan getController() kaedah, kami mendapatkan rujukan kepada MainWindowController dan lulus rujukan primaryStage kepada pengawal, membenarkan ia mengakses tetingkap secara terus.
Kelas MainWindowController akan kelihatan seperti ini:
public class MainWindowController {
private Stage window;
public void setWindow(Stage window) {
this.window = window;
}
// Other methods go here
}
Kini, pengawal mempunyai akses lengkap ke tetingkap dan boleh melakukan pelbagai operasi padanya berdasarkan keperluan aplikasi.
Perpustakaan dan Fungsi JavaFX
JavaFX ialah perpustakaan berkuasa yang menawarkan banyak ciri untuk mencipta aplikasi yang menarik dan menarik secara visual. Bersama-sama dengan Masa latihan kelas, ia menyediakan banyak kelas dan komponen lain untuk mencipta UI yang sempurna untuk aplikasi anda. Beberapa komponen penting termasuk:
- Adegan: Bekas untuk semua komponen visual aplikasi. Setiap Peringkat mempunyai Scene, dan Scene bertanggungjawab untuk menguruskan hierarki visual antara muka pengguna.
- FXMLLoader: Memuatkan fail .fxml yang mentakrifkan antara muka pengguna, menjadikannya lebih mudah untuk mereka bentuk reka letak UI yang kompleks dan memisahkan logik UI daripada kod hujung belakang.
- nod: Nod mewakili sebarang elemen visual dalam aplikasi JavaFX, seperti label, butang dan reka letak. Semua komponen visual dalam aplikasi mewarisi daripada Node.
- Ibu bapa: Subkelas Nod khusus yang membenarkan satu atau lebih nod anak, yang boleh disusun mengikut peraturan susun atur khusus ibu bapa.
Mengendalikan Kes Serupa
Mendapatkan tetingkap dalam pengawal hanyalah satu kes penggunaan untuk bekerja dengan perpustakaan dan fungsi JavaFX, tetapi terdapat banyak senario lain di mana pengetahuan ini boleh sangat membantu. Contohnya:
- Kandungan Dinamik: Memahami cara bekerja dengan tika tetingkap boleh membantu mencipta aplikasi yang bertukar secara dinamik antara kandungan berbeza dalam satu tetingkap, meningkatkan pengalaman pengguna.
- Rupa Tetingkap Tersuai: Akses terus ke tetingkap dalam pengawal membolehkan pembangun menukar penampilannya berdasarkan keutamaan pengguna atau keperluan aplikasi, seperti mengubah warna, ketelusan atau bentuk.
- Kawalan Tetingkap: Bekerja rapat dengan contoh tetingkap, pembangun boleh memberikan pengguna lebih kawalan ke atas tetingkap, seperti mengubah saiz, meminimumkan, memaksimumkan atau menutup tetingkap secara pengaturcaraan.
Kesimpulannya, mengetahui cara mendapatkan tetingkap dalam pengawal adalah kemahiran yang berharga untuk pembangun JavaFX. Dengan memahami cara bekerja dengan kelas Stage dan komponen serupa dalam JavaFX, pembangun boleh meningkatkan keupayaan aplikasi mereka dan mencipta antara muka pengguna yang lebih berkesan dan digilap.