1个回答
展开全部
主要要到的方法如下: void dispose () 释放由此 Window、其子组件及其拥有的所有子组件所使用的所有本机屏幕资源。 还有种方法 this.setVisible (false);隐藏当前界面 然后在现实另外一个界面 不过这种方法比较耗内存 示例代码: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class WindowTest extends JFrame implements ActionListener{ JLabel l; JPanel p1,p2; JButton b1,b2,b3; int i; public WindowTest(int i){ this.i=i; String str = "第"+i+"个窗口"; l = new JLabel(str); l.setHorizontalAlignment(SwingConstants.CENTER); l.setFont (new Font(Font.SERIF,Font.BOLD,30)); p1 = new JPanel(new BorderLayout()); p2 = new JPanel(); b1 = new JButton("<<"); b2 = new JButton("口"); b3 = new JButton(">>"); p1.add (l); p2.add(b1); p2.add(b2); p2.add(b3); add(p1,BorderLayout.CENTER); add(p2,BorderLayout.SOUTH); this.setTitle (str); this.setSize (400,400); this.setLocationRelativeTo (null); this.setVisible (true); this.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); p1.setBorder (BorderFactory.createEtchedBorder ()); p2.setBorder (BorderFactory.createLineBorder (Color.BLUE)); b1.setToolTipText ("上一个"); b2.setToolTipText ("退 出"); b3.setToolTipText ("下一个"); b1.addActionListener (this); b2.addActionListener (this); b3.addActionListener (this); } public void actionPerformed(ActionEvent ae){ if(ae.getSource ()==b1){ // this.setVisible (false); this.dispose (); this.i-=1; new WindowTest(i); }else if(ae.getSource ()==b2){ System.exit (0); }else if(ae.getSource ()==b3){ this.dispose (); this.i+=1; new WindowTest(i); } } public static void main(String[] args){ new WindowTest(0); } }
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询