我正在Java FX項(xiàng)目上工作,我創(chuàng)建了兩個(gè)FXML文件,我想將另一個(gè)窗格加載到主要的麻煩,即Border Pane。我想將另一個(gè)窗格加載到“邊框窗格”中心區(qū)域!這是我的項(xiàng)目的入口點(diǎn),它是一個(gè)Java文件package javafxapplication8; import java.io.IOException; import javafx.application.Application; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.scene.input.MouseEvent; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; /** * * @author Anu */ public class JavaFXApplication8 extends Application { @Override public void start(Stage stage) throws Exception { Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml")); Scene scene = new Scene(root); stage.setScene(scene); stage.show(); } @FXML void handleButtonAction(MouseEvent event) throws IOException { } /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } }之后,這將顯示主要的FXML文件,該文件顯示了我的“邊框”窗格<?xml version="1.0" encoding="UTF-8"?> <?import com.jfoenix.controls.JFXButton?> <?import javafx.scene.layout.AnchorPane?> <?import javafx.scene.layout.BorderPane?>但是,當(dāng)我單擊“按鈕”時(shí),這給了我很多錯(cuò)誤!我的項(xiàng)目結(jié)構(gòu):有人可以告訴我想念我的地方嗎?謝謝你。
1 回答

胡子哥哥
TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊
有兩個(gè)原因
javafx.stage.Stage.class.getResource("FXML.fxml")
返回null
是導(dǎo)致異常的原因:
不是以開(kāi)頭的資源
/
是相對(duì)于該類(lèi)解析的,即,在這種情況下,java正在尋找的資源/javafx/stage/FXML.fxml
不是您的資源的實(shí)際位置Stage
由于某種原因,似乎使用了無(wú)法解析jar中資源的其他類(lèi)加載器。確保使用可以訪問(wèn)jar的類(lèi)加載器加載的其他類(lèi),例如,使用FXMLDocumentController.class
loader.setLocation(FXMLDocumentController.class.getResource("/javafxapplication8/FXML.fxml"));
注意:您可能需要使用Clean and Build將新.class
文件添加到j(luò)ar中。
添加回答
舉報(bào)
0/150
提交
取消