Referenzieren von FXML-Dateien im JavaFX-Ressourcenordner
Beim Erstellen einer JavaFX-GUI-Anwendung kann es erforderlich sein, FXML-Dateien innerhalb von Controllern zu referenzieren. Um dies effektiv zu tun, ist es wichtig, Folgendes zu berücksichtigen:
Generische Ressourcensuche:
Das Verweisen auf FXML-Dateien ist Teil des generischen Ressourcensuchprozesses in Java. Wenn das aufrufende Programm den Ressourcenstandort an den FXMLLoader übergibt, erfolgt die Ressourcensuche selbst im Anwendungscode und nicht im FXMLLoader.
Beispielhafte Ressourcensuche:
Zum Laden Wenn Sie eine FXML-Datei mithilfe einer Ressourcensuche erstellen möchten, beachten Sie Folgendes:
FXMLLoader loader = new FXMLLoader(); loader.setLocation(getClass().getResource("/main.fxml")); Parent content = loader.load();
Ressourcenstandort Lösung:
Es gibt drei Optionen zum Auflösen von Ressourcenstandorten:
loader.setLocation(getClass().getResource("/main.fxml"));
loader.setLocation(getClass().getResource("/fxml/main.fxml"));
loader.setLocation(getClass().getResource("main.fxml"));
Im letzten Ansatz sollte sich die Ladeklasse in befinden die gleiche relative Position in der Java-Quellhierarchie wie die FXML-Datei.
FXMLLoader-Verwendung Empfehlungen:
IDE- und Build-Einstellungen:
Stellen Sie sicher, dass die FXML-Dateien während der Kompilierung oder IDE aus dem Ressourcenverzeichnis in das Build-Ausgabeverzeichnis kopiert werden Nutzung.
Java Jigsaw Modular Applications:
Bei der Arbeit mit modularen Anwendungen sollten Ressourcen vorhanden sein Der Zugriff erfolgt über:
ComboBoxStyling.class.getResource("/css/styleclass.css");
statt:
ComboBoxStyling.class.getClassLoader().getResource("/css/styleclass.css");
Das obige ist der detaillierte Inhalt vonWie verweise ich auf FXML-Dateien im JavaFX-Ressourcenordner?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!