以下是使用WebEngine对象的文件ClientArea.java
(位于 demoapp 文件夹中)。
public class ClientArea implements Initializable {
public WebEngine engine;
@Override
public void initialize(URL url, ResourceBundle rb) {
engine = browser.getEngine();
engine.load("about:blank");
}
}
我想将它引用到另一个文件(Undecorator.java
),该文件位于 insidefx.undecorator
如何制作此参考资料?
答案 0 :(得分:1)
我解决了类似的问题,如下所示:在加载fxml文件的地方,你可以得到控制器的任何元素,并提供对其他控制器的引用。
FXMLLoader fxmlLoader = new FXMLLoader();
fxmlLoader.setBuilderFactory(new JavaFXBuilderFactory());
fxmlLoader.setLocation(...); // set a URL for the ClientArea.fxml
try {
fxmlLoader.load();
} catch (IOException ex) {
...
}
ClientArea cacontroller = (ClientArea) fxmlLoader.getController();
WebEngine engine = cacontroller.getEngine(); // add a getter method in ClientArea
fxmlLoader.setLocation(...); // set a URL for the Undecorator.fxml
try {
fxmlLoader.load();
} catch (IOException ex) {
...
}
Undecorator ucontroller = (Undecorator) fxmlLoader.getController();
ucontroller.setEngine(engine); // add a setter method in Undecorator