永发信息网

java怎么给按钮添加动态事件?高手指点啊!我已经动态添加按钮,但每个按钮的事件怎么解决啊。

答案:4  悬赏:70  手机版
解决时间 2021-05-05 09:24
  • 提问者网友:雾里闻花香
  • 2021-05-04 21:00

import java.awt.*;
import java.awt.event.*;
public class Js implements ActionListener{

//public Js() {
//}
public static void main (String[] args) {
Frame f =new Frame("计算器");
f.setSize(263,243);
f.setLayout(null);
f.setBackground(Color.gray);
Label l1=new Label();
Label l2=new Label();
l1.setSize(50,20);
l1.setLocation(9,30);
l1.setText("编辑");
l2.setSize(100,20);
l2.setLocation(100,30);
l2.setText("帮助");
f.add(l1);
f.add(l2);
TextField t=new TextField(50);
t.setSize(245,20);
t.setLocation(9,53);
f.add(t);
String name[]={"Backspace","CE","C","Time"};
for(int i=0;i<name.length;i++){
Button b=new Button(name[i]);
b.setSize(60,25);
b.setLocation(10+i*62,82);
f.add(b);
}
String a[][]={{"7","8","9","/","sqrt"},{"4","5","6","*","%"},
{"1","2","3","-","1/x"},{"0","+/-",".","+","="}};
for(int m=0;m<4;m++)
for(int n=0;n<5;n++)
{
Button c=new Button(a[m][n]);
f.add(c);
c.setSize(39,23);
c.setLocation(10+n*50,110+m*28);
//c.addActionListener(f);
}





f.setVisible(true);
}
public void actionPerformed(ActionEvent e){

}

}

最佳答案
  • 五星知识达人网友:封刀令
  • 2021-05-04 22:31
我暂时保留我的看法!
全部回答
  • 1楼网友:迟山
  • 2021-05-05 01:45

你可以分开写啊,如:

button1.addActionListenner(new ActionListenner(){

public void actionPerformed(ActionEvent e){

这里面写你想实现的功能就OK了。

}

});

  • 2楼网友:爱难随人意
  • 2021-05-05 01:05

e.getSource()=“按钮的名字”就ok了

  • 3楼网友:舍身薄凉客
  • 2021-05-04 23:26

//c.addActionListener(f);

这一句去掉注释然后把f换成this,如下

c.addActionListener(this);

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯