JavaFX Webview无法更改URL

时间:2015-03-13 06:00:00

标签: java swing webview

我正在开发一个java swing应用程序,并在oracle教程simplebrowser之后嵌入了javafx的webview组件,url正在加载正常。如何让webview在运行时显示不同的URL?我尝试使用不同的url调用下面的loadURL方法,但是它不起作用,还尝试创建一个新的ReloaURL方法来完成这项工作,仍然无法正常工作,这里有任何帮助。

        private void initComponents(String FilePath) {
        createScene();
        loadURL("file:///"+FilePath);

        }

        private void createScene() {

        Platform.runLater(new Runnable() {
            @Override
            public void run() {


            WebView view = new WebView();
            engine = view.getEngine();
            jfxPanel.setScene(new Scene(view));


            }
        }); 
        }

        public void loadURL(final String url) {
        Platform.runLater(new Runnable() {
            @Override
            public void run() {
            String tmp = toURL(url);

            if (tmp == null) {
                tmp = toURL("http://" + url);
            }

            engine.load(tmp);
            }
        });
        }

        public void ReloadURL(final String url) {
        Platform.runLater(new Runnable() {
            @Override
            public void run() {
            String tmp = toURL(url);

            if (tmp == null) {
                tmp = toURL("http://" + url);
            }
            //engine.load(tmp);
            view.getEngine().load(tmp);
            }   
        });
        }

        private static String toURL(String str) {
        try {
            return new URL(str).toExternalForm();
        } catch (MalformedURLException exception) {
            return null;
        }
        }

0 个答案:

没有答案