1

我是 javafx 的新手,我想将 fxml 文件加载到窗格

问题是当我单击 pageTwo 按钮时,一条异常消息显示java.lang.ClassNotFoundException: PageTwoController

这是代码

@FXML
private void pageTwoAction(ActionEvent event) {
    try {
        FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("pageTwo.fxml"));
        Pane displayArea = (Pane) fxmlLoader.load();


    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, e.getMessage());
    }
}
4

2 回答 2

2

FXML 必须注意两件事:

  1. 带有包路径的控制器类名

<AnchorPane fx:id="root" prefHeight="-1.0" prefWidth="-1.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2" fx:controller="countrycode.compoany.project.javafx.PageTwoController">

  1. 导入所有需要的类,就像在普通的 java 类文件中一样

<?import countrycode.company.project.javafx.*?>

您可以手动编辑它们或使用 SceneBuilder 尤其是如果您是 JavaFX 新手,它在开始时会有很大帮助

于 2013-09-19T09:53:56.827 回答
0

if you are using NetBeans, you need to write yourself the import statement of the package in the .fxml file

<?import foldername.*?> 
于 2015-05-11T15:55:25.950 回答