Rumah > Java > javaTutorial > Mengapa Kelas Pengawal JavaFX saya tidak berfungsi?

Mengapa Kelas Pengawal JavaFX saya tidak berfungsi?

Patricia Arquette
Lepaskan: 2024-11-03 01:36:29
asal
748 orang telah melayarinya

Why is my JavaFX Controller Class not working?

Kelas Pengawal JavaFX Tidak Berfungsi

Kod yang disediakan antara muka dengan TextArea sebagai log. Matlamatnya adalah untuk mengemas kini kandungan TextArea daripada kelas berasingan apabila diperlukan. Ini memerlukan mencipta kelas pengawal yang memanjangkan Boleh Dimulakan. Walau bagaimanapun, pelaksanaan pengawal tidak berfungsi dengan betul.

Penyelesaian

Kod ini mempunyai isu asas: kelas Aplikasi sedang digunakan sebagai pengawal. Amalan ini tidak digalakkan kerana:

  • Hanya ada satu tika Aplikasi, tetapi pemuat selalunya mencipta berbilang kejadian.
  • Merujuk objek ahli pengawal boleh mengelirukan, kerana ia berbeza dalam ketersediaan medan antara aplikasi yang dilancarkan dan contoh aplikasi yang dibuat oleh pemuat.

Selain itu, disyorkan untuk melengkapkan kefungsian asas UI sebelum melaksanakan berbilang benang.

Kod Disemak

Berikut ialah kod yang diperbetulkan menggunakan kelas berasingan untuk pengawal, pengimport web dan sampel pengelogan teks:

Root.fxml

<code class="xml">...
fx:controller="textlogger.ImportController"
...</code>
Salin selepas log masuk

ImportController.java

<code class="java">...
private WebImporter importer;
...</code>
Salin selepas log masuk

WebImporter.java

<code class="java">...
private final TextArea textArea;
...</code>
Salin selepas log masuk

TextLoggingSample.java ( titik masuk)

<code class="java">...
Parent root = loader.load(
    getClass().getResourceAsStream(
            "Root.fxml"
    )
);
...</code>
Salin selepas log masuk

Kesimpulan

Dengan mengasingkan kelas pengawal dan menggunakan pendekatan yang betul untuk berbilang benang, aplikasi kini boleh berjaya mengemas kini TextArea daripada kelas berasingan.

Atas ialah kandungan terperinci Mengapa Kelas Pengawal JavaFX saya tidak berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan