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:
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>
ImportController.java
<code class="java">... private WebImporter importer; ...</code>
WebImporter.java
<code class="java">... private final TextArea textArea; ...</code>
TextLoggingSample.java ( titik masuk)
<code class="java">... Parent root = loader.load( getClass().getResourceAsStream( "Root.fxml" ) ); ...</code>
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!