我刚刚开始使用 JavaFX,并在 SceneBuilder 中创建了一个简单的 gui,并且可以让大多数功能在 WebView 之外工作。
在我的 FXML 代码中,我有:
<WebView id="webComponent" prefHeight="200.0" prefWidth="200.0" />
然后在我的 Controller 类中,按下按钮时运行以下代码:
webComponent.getEngine().load("http://google.com/");
当我按下按钮时尝试运行该程序时,它首先将一个字符串打印到控制台(我对其进行了编程来执行此操作),但随后抛出一个空指针异常,并且 WebView 保持空白。
有人可以解释一下这个问题吗,因为它目前让我感到困惑。
谢谢
最佳答案
如果您正在处理 FXML 文件,并且想要在 Controller
类中使用 @FXML 注解的组件,则需要使用 fx:id
提供 id .
就您而言:
<WebView fx:id="webComponent" prefHeight="200.0" prefWidth="200.0" />
通常,id
用于CSS设置。
查看文档 here .
关于java - 初始化使用 SceneBuilder 创建的 WebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29459278/