在我已经进行webEngine.load调用之后,我无法理解如何将另一个页面加载到webEngine中。 我注意到,在初始化浏览器的Web视图后,程序的执行会等待窗口关闭,因为我需要每隔20秒进行一次检查,我已经创建了另一个初始化Web视图的线程。
public class MainBrowser extends Application {
private Scene scene;
private static String json;
private static Browser browser;
@Override
public void start(Stage stage) {
// create the scene
stage.setTitle("Web View");
Rectangle2D screenSize = Screen.getPrimary().getVisualBounds();
double width = screenSize.getWidth();
double height = screenSize.getHeight();
//System.out.println("Defining a new scene...");
browser = new Browser(json);
scene = new Scene(browser,width,height, Color.web("#666970"));
stage.setScene(scene);
//scene.getStylesheets().add("webviewsample/BrowserToolbar.css");
stage.setFullScreen(true);
stage.show();
}
public static void main(String j){
json = j;
launch();
}
public static void reload(String j){
json = j;
browser.reloadPage(j);
}
}
这就是我以前称之为浏览器的内容
private static void openBrowserWindow(String json)
{
browserRunnable = new BrowserRunnable(json);
browserThread = new Thread(browserRunnable);
browserThread.start();
}
private static void reloadBrowserWindow(String json)
{
browserRunnable.reloadBrowser(json);
}
使用此功能,我尝试在另一个线程中调用浏览器,然后加载另一个页面。当然它不起作用,但我真的不知道如何让webEngine加载另一页:
public class BrowserRunnable implements Runnable {
static MainBrowser browser;
static String json;
public void reloadBrowser(String json)
{
this.json = json;
MainBrowser.reload(json);
}
public BrowserRunnable(String json)
{
this.json = json;
}
@Override
public void run() {
MainBrowser.main(json);
}
}
在浏览器中重新加载功能:
public void reloadPage(String json)
{
File openpage = new File(Config.PAGE_LOCAL_URL);
String param = "?json=" + json;
System.out.println(param);
webEngine.load(openpage.toURI().toString() + param);
}
我知道有很多代码,但它只是为了显示整体,我只需要知道如何更新我的webEngine的页面