gpt4 book ai didi

java - JavaFX 和 Swing 控件之间的交换

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

我正在使用 JavaFX 控件开发 swing 应用程序。在此应用程序中,我有三个控件按钮 WebViewJTable。单击 button1 时,应在屏幕上添加表格,并在单击其他按钮时删除 Web View 应删除表格并添加 Web View 。

我正在使用以下代码。

  import javafx.application.Platform;
import javafx.scene.Scene;
import javafx.scene.web.*;
import javafx.stage.Stage;
import javafx.embed.swing.JFXPanel;
import javafx.scene.Group;
import javax.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
public class webviewtestclass extends JFrame implements ActionListener {
JFXPanel fxpanel,fxpanel1;
static String filepath;
JTable table;
public webviewtestclass()
{
setLayout(null);
JButton b1= new JButton("OK");
JButton b2= new JButton("OKK");
add(b1);
add(b2);
b1.setBounds(20,50,50,30);
b2.setBounds(70,50,50,30);
b1.addActionListener(this);
b2.addActionListener(this);

fxpanel= new JFXPanel();
add(fxpanel);
fxpanel.setBounds(10,50,1000,800);


Object obj=new Object[50][20];
String title[]={"head1","head2"};
table=new JTable(title,obj);
add(table);


}

public void actionPerformed(ActionEvent ae)
{
if(ae.getActionCommand().equals("OK"))
{
remove(fxpanel);
add(table);

}
if(ae.getActionCommand().equals("OKK"))
{
remove(table);
add(fxpanel);

}
Platform.runLater(new Runnable() {
public void run()
{
initFx(fxpanel);
}}
);
}



private static void initFx(final JFXPanel fxpanel)
{
String htmlpath="d:/lcrux/html/";
Group group= new Group();
Scene scene= new Scene(group);
fxpanel.setScene(scene);
WebView webview = new WebView ();
group.getChildren().add(webview);
webview.setMinSize(1200,800);
webview.setMaxSize(1200,800);

webview.setVisible(true);
final WebEngine eng = webview.getEngine();
File htmlFile = new File(htmlpath+filepath);
try
{
eng.load(htmlFile.toURI().toURL().toString());
}
catch(Exception ex)
{
}
}
public static void main(final String args[])
{


webviewtestclass frm=new webviewtestclass();
frm.show();

}


}

最佳答案

将两个组件放入 CardLayout 中在它们之间交换。使用 CardLayout 的代码可以在 this answer 中看到。 .

关于java - JavaFX 和 Swing 控件之间的交换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13656326/

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