gpt4 book ai didi

JavaFX 与 Swing

转载 作者:行者123 更新时间:2023-12-02 12:56:12 25 4
gpt4 key购买 nike

我正在尝试连接两个类。一个是主 swing 类,另一个是 swing 框架中的 javafx web View 。这是完美运行的,但没有显示确切的输出。我的 URL 来 self 的 Swing 框架类。

public Instruction() {
System.out.println("new url number is=="+newurl);
System.out.println("token number is=="+first.tokennum);
System.out.println("final link is="+FirstToken.finallink);
frame1.add(panel);
frame1.setSize(500,500);
frame1.setVisible(true);
Platform.runLater(new Runnable() {
@Override
public void run() {
//To change body of generated methods, choose Tools | Templates.
initfx(panel);
}
});
}


public void initfx(JFXPanel panel){
Scene scene = createscene();
panel.setScene(scene);
geturl(FirstToken.finallink);
}
public Scene createscene(){
Group root = new Group();
Scene scene=new Scene(root);
Text text = new Text();
text.setX(50);
text.setY(100);
root.getChildren().add(text);
return (scene);

}
public void geturl(String url){
WebView web=new WebView();
System.out.println("url is="+url);
web.getEngine().load(url);

}

最佳答案

您没有将创建的 WebView 添加到场景图中。要修复此问题,请让您的 geturl 例程返回您的 WebView 并将该 WebView 添加到构成场景根的组中。

如果您不明白,请阅读Oracle tutorial on integrating a JavaFX WebView into Swing并查看随附的source

示例代码:

public WebView geturl(String url){
WebView webView = new WebView();
webView.getEngine().load(url);
return webView;
}

public void initfx(JFXPanel panel){
WebView webView = geturl(FirstToken.finallink);
Scene scene = createscene(webView);
panel.setScene(scene);
}

public Scene createscene(WebView webView){
Pane root = new Pane();
Scene scene = new Scene(root);
root.getChildren().add(webView);

return scene;
}

关于JavaFX 与 Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44433719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com