首頁  >  文章  >  Java  >  為什麼我的 JavaFX 控制器類別不工作?

為什麼我的 JavaFX 控制器類別不工作?

Patricia Arquette
Patricia Arquette原創
2024-11-03 01:36:29627瀏覽

Why is my JavaFX Controller Class not working?

JavaFX 控制器類別不工作

提供的程式碼與 TextArea 作為日誌互動。目標是在需要時從單獨的類別更新 TextArea 的內容。這需要創建一個擴展Initialized 的控制器類別。但是,控制器實作無法正常運作。

程式碼有一個根本問題:Application 類別被用作控制器。不鼓勵這種做法,因為:

  • 應該只有一個應用程式實例,但載入程式經常會建立多個實例。
  • 引用控制器成員物件可能會令人困惑,因為它們的用途不同啟動的應用程式和載入器建立的應用程式實例之間的欄位可用性。

此外,建議在實作多執行緒之前完成 UI 的基本功能。

修訂的程式碼

以下是使用控制器、Web 導入器和文字日誌記錄範例的單獨類別的更正代碼:

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 (入口點)

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

結論

透過分離控制器類別並使用正確的多執行緒方法,應用程式現在可以成功地從單獨上課。

以上是為什麼我的 JavaFX 控制器類別不工作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn