Java 刷新JTabbedPane中选项卡的内容
我正在制作简单的Java选项卡窗格GUI。我希望在侧面板中的事件中更新选项卡的内容(例如,单击选项卡2 JPanel中的按钮) 下面是我的代码:Java 刷新JTabbedPane中选项卡的内容,java,swing,jpanel,jtabbedpane,Java,Swing,Jpanel,Jtabbedpane,我正在制作简单的Java选项卡窗格GUI。我希望在侧面板中的事件中更新选项卡的内容(例如,单击选项卡2 JPanel中的按钮) 下面是我的代码: import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTabbedPane; import java.awt.*; // Needed For the Defiantions Of the Dimenti
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import java.awt.*; // Needed For the Defiantions Of the Dimentions
import javax.swing.event.*;
import java.awt.event.*; // Needed to handle window close event
public class UserTabPan extends JFrame {
String userName;
public UserTabPan(String Uname,Float CKBalance,Float SABalance) {
userName=Uname;
//Basic Frame Related Definations
setSize(500, 400); // Sets Size Of the Necessary Windows
//get screen size and set the location of the frame
Toolkit tk = Toolkit.getDefaultToolkit();
Dimension d = tk.getScreenSize();
int screenHeight = d.height;
int screenWidth = d.width;
setLocation( screenWidth / 4, screenHeight / 4);
setTitle("Tabbed Pane");
//Create The Tabbbed Pane
JTabbedPane jtp = new JTabbedPane();
Container contentPane = getContentPane(); //add a panel to a frame
contentPane.add(jtp);
//Basic Tabs , each one is a panel
//Tab Panel 1
JPanel jp1 = new ViewBalanceBO(userName,CKBalance,SABalance);
//Tab Panel 2
JPanel jp2 =new TransferMoneyBO(userName);
//Tab Panel 3
JPanel jp3=new DepositBO(userName);
//Tab Panel 3
JPanel jp4=new WithDrawBO(userName);
//Tab Panel 4
JPanel jp5= new InquireTransactionBO(userName);
//Add Both Tabs to Panle now
jtp.addTab("Overview", jp1);
jtp.addTab("Transfer Money", jp2);
jtp.addTab("Deposit", jp3);
jtp.addTab("WithDraw", jp4);
jtp.addTab("View Transactions", jp5);
addWindowListener (new WindowAdapter() //handle window closing event
{ public void windowClosing (WindowEvent e)
{ System.exit(0);
}
});
}
}
例如,如果在“撤消”选项卡中单击按钮,则应重新初始化“查看事务”选项卡
我如何才能做到这一点?不要将变量设置为本地变量,而是将它们设置为实例变量。在选项卡式窗格和视图之间构建一个模型,允许模型一起更新或更改。
setLocation(screenWidth/4,screenHeight/4);
Ugh..seesetLocationByPlatform(true)
addWindowListener(new WindowAdapter()//处理窗口关闭事件{public void windowClosing(WindowEvent e){System.exit(0);…
请参阅setDefaultCloseOperation(关闭时退出);
或更好的setDefaultCloseOperation(关闭时处置);
最好只使用一个框架实例,而不是扩展它。setSize(500400);//设置必要窗口的大小
而不是执行pack();//添加组件后,使窗口大小正确