我在javafx場景構建器中設計了一個UI,它在堆棧面板中有一個簡單的按鈕。並且我已將控制器類命名爲simplecclass。我已經將fxml保存爲simple.fxml。 我在netbeans中創建了一個控制器類,它在點擊按鈕時只打印一些味精。將場景構建器UI fxml與javafx應用程序連接起來
在NewFXBuilder java中,我已經加載了simple.fxml。請在NewFXBuilder.java代碼下面找到。
package javafxapplication2;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.AnchorPane;
import javafx.stage.Stage;
import java.util.logging.Level;
import java.util.logging.Logger;
import javafx.fxml.FXMLLoader;
public class NewFXbuilder extends Application {
@Override
public void start(Stage primaryStage) {
try {
StackPane page = (StackPane) FXMLLoader.load(NewFXbuilder.class.getResource("simple.fxml"));
Scene scene = new Scene(page);
primaryStage.setScene(scene);
primaryStage.setTitle("FXML is Simple");
primaryStage.show();
} catch (Exception ex) {
Logger.getLogger(NewFXbuilder.class.getName()).log(Level.SEVERE, null, ex);
}
}
public static void main(String[] args) {
Application.launch(NewFXbuilder.class, (java.lang.String[])null);
}
}
我simple.fxml,simplecclass.java和NewFXbuilder.java所有駐留在同一文件夾javafxapplication2。
運行NewFXBuilder.java時,但它給我以下錯誤。
javafxapplication2.NewFXbuilder開始 重度:空 javafx.fxml.LoadException:拋出java.lang.ClassNotFoundException:simplecclass
謝謝你的答覆,我已修復它。我做的錯誤是忘記在場景生成器的控制器類名稱字段中添加java包名。它應該是packagename.simplecclass,但我單獨給了simplecclass。 – crazyvi 2013-02-28 08:53:07
是的,您必須使用完全限定的類名稱或使用導入語句。 – Puce 2013-02-28 09:24:13