2016-12-08 6 views
0

私のJavaFX実装では、ペインのボタンをクリックすると、Webviewを開きたいペインを使用します。javafxのペインからhtmlファイルを開始

だがしかし、このスニペットで、それは動作しません:

WebView webView = new WebView(); 

    WebEngine webEngine = webView.getEngine(); 

    webEngine.load("http://google.com"); 

    button.setOnAction((event) -> { 
     webEngine.load(url.toExternalForm()); 

    }); 

私はFXMLを呼び出すためにこれを持っている:

Parent root = FXMLLoader.load(getClass().getResource("test.fxml")); 

    Scene scene = new Scene(root); 
    primaryStage.setScene(scene); 
    primaryStage.sizeToScene(); 
    primaryStage.show(); 

任意のヒントを? thx

+0

シーンに「WebView」を追加しましたか?さらに、前にページをロードすると、「WebViewを開く」ということはほとんどありません。 – fabian

+0

私の投稿に少し変更がありました:fxmlloaderでfxmlファイルをロードしてシーンに入れています。私のfxmlファイルにボタンがあります。私はそれがクリックされると、ウェブサイトまたはローカルHTMLファイルを呼びたいと思う。どうすればそれをやり遂げることができますか?私はwebviewと "ルート"を同じシーンに追加できますか? –

答えて

0

ペインをルートに追加して、Webビューをペインに追加する必要があります。また、あなたと比較して、このボタンハンドラを見てください。

 Button btn = new Button(); 
     btn.setText("Say 'Hello World'"); 

     WebView webview = new WebView(); 
     WebEngine webengine = webview.getEngine(); 

     btn.setOnAction(new EventHandler<ActionEvent>() { 

      @Override 
      public void handle(ActionEvent event) { 
       webengine.load("http://www.google.com"); 
      } 
     }); 

     VBox root = new VBox(); 
     root.getChildren().addAll(btn, webview);//I don't see where you are doing this 


     Scene scene = new Scene(root, 300, 250); 

     primaryStage.setTitle("Hello World!"); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
関連する問題