私の目標は、コントローラー クラスを使用して、html コンテンツを fxml ドキュメントの WebView オブジェクトに配置できるようにすることです。私の FXML ドキュメントには、ボタンや画像などの他のオブジェクトが含まれています。WebView を GUI の一部にしたいだけです。コントローラ クラスを使用して、FXML ドキュメントの TextArea 内にコンテンツを配置できます。WebView に対してこれを行うには、WebEngine が必要なため、少し注意が必要です。FXMLドキュメントなしでWebViewを単独で起動する方法は知っていますが、私の目標が達成可能かどうかは誰にもわかりませんか?
これはコントローラー クラスでの私の試みですが、呼び出しターゲットの例外が発生します。
public class FXMLDocumentController implements Initializable {
@FXML
private Label label;
WebEngine engine;
@FXML
private void handleButtonAction(ActionEvent event) {
System.out.println("You clicked me!");
label.setText("Hello World!");
}
//access WebView in FXML document
@FXML WebView mywebview; //mywebview is the fxid
public void displayWeb() {
engine = mywebview.getEngine();
final String hellohtml = "chang.htm"; //HTML file to view in web view
URL urlHello = getClass().getResource(hellohtml);
engine.load(urlHello.toExternalForm());
}
@Override
public void initialize(URL url, ResourceBundle rb) {
displayWeb();
}
}