初始化使用 SceneBuilder 创建的 WebView
Initializing a WebView created using SceneBuilder
我刚刚开始使用 JavaFX,并在 SceneBuilder 中创建了一个简单的图形用户界面,并且可以让大多数功能在 WebView 之外工作。
在我的 FXML 代码中有:
<WebView id="webComponent" prefHeight="200.0" prefWidth="200.0" />
然后在我的控制器中 class 当按下按钮时,我有以下代码 运行:
webComponent.getEngine().load("http://google.com/");
当我按下按钮时尝试 运行 程序时,它首先将字符串打印到控制台(我对其进行编程以执行此操作),但随后抛出空指针异常并且 WebView 仍然存在空白。
有人能解释一下吗,因为我现在很困惑。
谢谢
如果您正在处理 FXML 文件,并且想在 Controller
class 中使用带有 @FXML 注释的组件,您需要提供一个带有 fx:id
的 ID。
你的情况:
<WebView fx:id="webComponent" prefHeight="200.0" prefWidth="200.0" />
通常,id
用于 CSS 设置。
查看文档 here。
我刚刚开始使用 JavaFX,并在 SceneBuilder 中创建了一个简单的图形用户界面,并且可以让大多数功能在 WebView 之外工作。
在我的 FXML 代码中有:
<WebView id="webComponent" prefHeight="200.0" prefWidth="200.0" />
然后在我的控制器中 class 当按下按钮时,我有以下代码 运行:
webComponent.getEngine().load("http://google.com/");
当我按下按钮时尝试 运行 程序时,它首先将字符串打印到控制台(我对其进行编程以执行此操作),但随后抛出空指针异常并且 WebView 仍然存在空白。
有人能解释一下吗,因为我现在很困惑。
谢谢
如果您正在处理 FXML 文件,并且想在 Controller
class 中使用带有 @FXML 注释的组件,您需要提供一个带有 fx:id
的 ID。
你的情况:
<WebView fx:id="webComponent" prefHeight="200.0" prefWidth="200.0" />
通常,id
用于 CSS 设置。
查看文档 here。