java中如何从一个窗口通过点击按钮进入另外一个窗口?

在一个按钮上设置事件监听器,事件监听器怎么写?还有,在main方法中还要有什么操作吗?(两个窗口不在一个class中。)

第1个回答  推荐于2016-10-26
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;

public class Frame1 extends JFrame {

private static final long serialVersionUID = 1L;
public static void main(String args[]) {
try {
Frame1 frame = new Frame1();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
public Frame1() {
super();
getContentPane().setLayout(null);
setBounds(100, 100, 300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JButton btn = new JButton();
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Frame2();
}
});
btn.setText("OpenFrame2");
btn.setBounds(92, 107, 106, 26);
getContentPane().add(btn);
}
}
=============================================
import javax.swing.JFrame;

public class Frame2 extends JFrame {

private static final long serialVersionUID = 1L;

public Frame2() {
super();
setTitle("Frame2");
setBounds(100, 100, 215, 99);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}本回答被提问者采纳
第2个回答  2009-03-20
直接new 类名就可以了。
第3个回答  推荐于2016-10-26
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;

public class Frame1 extends JFrame {

private static final long serialVersionUID = 1L;
public static void main(String args[]) {
try {
Frame1 frame = new Frame1();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
public Frame1() {
super();
getContentPane().setLayout(null);
setBounds(100, 100, 300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JButton btn = new JButton();
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Frame2();
}
});
btn.setText("OpenFrame2");
btn.setBounds(92, 107, 106, 26);
getContentPane().add(btn);
}
}
=============================================
import javax.swing.JFrame;

public class Frame2 extends JFrame {

private static final long serialVersionUID = 1L;

public Frame2() {
super();
setTitle("Frame2");
setBounds(100, 100, 215, 99);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}本回答被提问者采纳
第4个回答  2009-03-20
直接new 类名就可以了。
相似回答