我正在尝试使用这行代码将 CSS 文件加载到 JavaFX 中,它给了我一个空指针异常:
scene.getStylesheets().add(welcome.class.getResource("background.css").toExternalForm());
My background.css
与我制作的欢迎课程位于同一文件夹中。
知道为什么我得到一个空指针吗?
错误日志:
Exception in Application start method
Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(Unknown Source)
at com.sun.javafx.application.LauncherImpl.access$000(Unknown Source)
at com.sun.javafx.application.LauncherImpl$1.run(Unknown Source)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NullPointerException
at welcome.start(welcome.java:164)
at com.sun.javafx.application.LauncherImpl$5.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl$5.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl$4$1.run(Unknown Source)
at com.sun.javafx.application.PlatformImpl$4$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl$4.run(Unknown Source)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(Unknown Source)
at com.sun.glass.ui.win.WinApplication$3$1.run(Unknown Source)
... 1 more
任何资源都应该位于类路径上才能成功加载(如果它与您的欢迎类位于同一文件夹中,那么它已经如此)。然后,您应该在样式表文件的路径前面添加“/”符号,使其看起来像这样:
scene.getStylesheets().add(welcome.class.getResource("/background.css").toExternalForm());
然后就可以加载成功了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)