【发布时间】:2013-02-09 16:02:48
【问题描述】:
在我的 Swing 应用程序中,我有 2 个 JFrame A 和 B。当我单击 JFrame A 上的按钮时,它会打开 JFrame B 并隐藏自身(我设法做到了那部分)
在 JFrame B 上,我在 JTabbedPane 上放置了 4 个 JPanel。每个 JPanel 有 2 个 JButton。
当我单击 JPanel 上的 Jbutton 并再次显示 Jframe A 时,我试图隐藏 JFrame B。
我该怎么做?
// JPanel 类
公共类 AddItemPanel 扩展 javax.swing.JPanel {
public AddItemPanel() {
initComponents();
}
private void btnCancelActionPerformed(java.awt.event.ActionEvent evt) {
if(evt.getSource() == btnCancel)
{
ItemFrame d = new ItemFrame();
d.setVisible(false);// not working
this.setVisible(false);// not working
}
}
}
// JFrame 类
公共类 ItemFrame 扩展 javax.swing.JFrame {
public ItemFrame() {
initComponents();
jTabbedPane1.add("Add Items",new AddItemPanel());
jTabbedPane1.add("Delete Items",new DeleteItemPanel());
jTabbedPane1.add("Update Items",new UpdateItemPanel());
jTabbedPane1.add("Search Items",new SearchItemPanel());
}
}
【问题讨论】:
-
使用'setVisible()'方法隐藏和显示帧
-
请参阅The Use of Multiple JFrames, Good/Bad Practice? 可能框架 B 应该是(可能是模态的)对话框,框架 A 应该是主应用程序。并且永远不会消失。