shiguangmanbu7
2015-07-21 09:54
采纳率: 100%
浏览 21.9k
已采纳

Java点击按钮后弹出新窗口,关闭新窗口后如何返回到原来的窗口?

如题,现在设计一个界面,里面有一个按钮,增加ActionListener事件,点击按钮后弹出一个新的窗口,里面有更详细的信息。现在将新窗口关闭,想返回到原来的旧窗口。菜鸟一枚,请前辈指点迷津...

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • danielinbiti 2015-07-21 09:59
    已采纳
     import javax.swing.*;
    
    import java.awt.Rectangle;
    import java.awt.event.*;
    
    public class Swing7 extends JFrame implements ActionListener {
        JButton jb = new JButton();
    
        public Swing7() {
            this.setTitle("Java——");
            jb.setText("确定");
            jb.setMnemonic('a');
            this.add(jb);
            this.setBounds(200, 300, 250, 300);
            this.setVisible(true);
            jb.addActionListener(this); //由于Swing7实现了ActionListener接口,所以给jb添加的ActionListener就是Swing7实例。
        }
    
        public void actionPerformed(ActionEvent e) {// 实现ActionListener接口的actionPerformed接口。
            JFrame frame = new JFrame("新窗口");//构造一个新的JFrame,作为新窗口。
            frame.setBounds(// 让新窗口与Swing7窗口示例错开50像素。
                    new Rectangle(
                            (int) this.getBounds().getX() + 50,
                            (int) this.getBounds().getY() + 50, 
                            (int) this.getBounds().getWidth(), 
                            (int) this.getBounds().getHeight()
                    )
                );
            JLabel jl = new JLabel();// 注意类名别写错了。
            frame.getContentPane().add(jl);
            jl.setText("这是新窗口");
            jl.setVerticalAlignment(JLabel.CENTER);
            jl.setHorizontalAlignment(JLabel.CENTER);// 注意方法名别写错了。
            frame.setVisible(true);
        }
    
        public static void main(String args[]) {
            Swing7 s = new Swing7();
        }
    }
    
    
    打赏 评论
  • JonsonJiao 2015-07-21 13:43

    每个JFrame实例最好都加上setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE)

    1 打赏 评论

相关推荐 更多相似问题