javafx应用启动自动执行函数_JavaFx:Application start方法中的异常
这个问题在javaFx中经常重复,我的意思是这个例外:
Application start方法中的异常
因为你没有发布你的堆栈跟踪,任何人都可以找到你的问题,我建议你确定以下事项:
在您的主要应用中:
确保fxml文件的路径正确 .
确保css文件的路径正确无误 .
在你的控制器中:
确保fxml中存在节点fx:id并且它是正确的 .
确保导入事件类 .
有些时候你会找到相同的类名,但不同的包
我给你一个 MouseEvent 的例子,它出现在 awt 包和 javafx 包中
我尝试用所有条件编写代码,它调用异常,因为它可以找到Style.css(也许这是错误),但之后一切都很好:
这是您的主要应用程序:package stackoverflow;
import java.io.IOException;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
/**
*
* @author Xlint Xms
*/
public class home extends Application {
@Override
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("home.fxml")); //Be sure of your path
Scene scene = new Scene(root, 1300, 768);
scene.getStylesheets().add(getClass().getResource("Style.css").toExternalForm());//Be sure of your Style.css file
stage.setScene(scene);
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
而你的控制器:
public class HomeController implements Initializable {
@FXML
private JFXButton log;
@FXML
private JFXButton engr;
@FXML
private Pane login,eng;
/*Be sure of MouseEvent class :It is in javafx package not awt package*/
@FXML
private void changeofpages(MouseEvent event) {
if (event.getTarget() == log) {
login.setVisible(true);
eng.setVisible(false);
} else if (event.getTarget() == engr) {
eng.setVisible(true);
login.setVisible(false);
}
}
@Override
public void initialize(URL location, ResourceBundle resources) {
}
这段代码对我有用,我也希望你 .
总结
以上是生活随笔为你收集整理的javafx应用启动自动执行函数_JavaFx:Application start方法中的异常的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 集成电路设计专业视频集(一)
- 下一篇: java数据结构_概述Java中的数据结