Java编程。比如在一个面板上有两个按钮,怎么实现分别点击这两个按钮然后弹出不同的窗口?我的代码不
Java编程。比如在一个面板上有两个按钮,怎么实现分别点击这两个按钮然后弹出不同的窗口?我的代码不管点击哪个按钮都是弹出两个窗口,求大神们解救,新手来的~...
Java编程。比如在一个面板上有两个按钮,怎么实现分别点击这两个按钮然后弹出不同的窗口?我的代码不管点击哪个按钮都是弹出两个窗口,求大神们解救,新手来的~
展开
推荐于2017-11-27
展开全部
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Test extends JFrame{
public Test(){
this.setSize(400,300);
this.setLocationRelativeTo(null);//设置居中
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel jp =new JPanel();
final JButton jb1 = new JButton("弹出蓝色");
JButton jb2 = new JButton("弹出青色");
jp.add(jb1);
jp.add(jb2);
//给第一个按钮添加监听
jb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFrame jf=new JFrame();
JPanel jp=new JPanel();
jf.setSize(200, 200);
jf.add(jp);
jp.setBackground(Color.blue);
jf.setLocationRelativeTo(jb1);
jf.setVisible(true);
}
});
//给第二个按钮添加监听
jb2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFrame jf=new JFrame();
JPanel jp=new JPanel();
jf.setSize(200, 200);
jf.add(jp);
jp.setBackground(Color.cyan);
jf.setLocationRelativeTo(jb1);
jf.setVisible(true);
}
});
this.add(jp);
}
public static void main(String arg[]){
new Test().setVisible(true);
}
}
追问
太棒了!小弟感激万分!!解决了哈哈
展开全部
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Pratice1 extends Frame implements ActionListener{
Button b1,b2;
Pratice1(){
b1=new Button("b1");
b2=new Button("b2");
add(b1,"North");
add(b2,"Center");
b1.addActionListener(this);
b2.addActionListener(this);
pack();
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==b1){
Frame f1=new Frame("我是b1的窗口");
f1.setVisible(true);
f1.setSize(300, 300);// TODO 自动生成的方法存根
}
else if(e.getSource()==b2){
Frame f1=new Frame("我是b2的窗口");
f1.setVisible(true);
f1.setSize(300, 300);
}
}
public static void main(String args[]){
Pratice1 p=new Pratice1();
p.setVisible(true);
}
}
追问
您的这是一种方法,但是另一位网友的代码跟我现在用的方法一样,所以我根据他的代码很快就修改成功了。但是小弟真的是万分感激您,谢谢.
追答
好咯,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询