e.getActionCommand( );是什么意思
返回:标识此事件命令的字符串。返回与此动作相关的命令字符串。这使得"modal"组件可以由其当前的状态,通过此字符串来得到它能够产生的几个命令之一。例如,单个按钮可以在“显示详细信息”和“隐藏详细信息”之间切换。
主要用于编程:
概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“a”,s[10]="j",而字符串的零位正是它的长度,如s[0]=10,这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。
返回:标识此事件命令的字符串
返回与此动作相关的命令字符串。这使得"modal"组件可以由其当前的状态,通过此字符串来得到它能够产生的几个命令之一。
例如,单个按钮可以在“显示详细信息”和“隐藏详细信息”之间切换。在所有情况下,源对象和事件都将是相同的,但命令字符串将会标识出实际对应的动作。
注意,如果将null命令字符串传递给此ActionEvent的构造方法,则此方法返回null。
扩展资料
在这种方式下:我们要继承ActionListener接口,并且要实现actionPerformed方法。通过getActionCommand()方法来获取事件的事件源。
publicclassTest_01extendsJFrameimplementsActionListener{
Test_01(){
JPanelpanel=newJPanel();
JButtonbutton1=newJButton("按钮一");
JButtonbutton2=newJButton("按钮二");
panel.add(button1);
panel.add(button2);
this.getContentPane().add(panel);
this.setVisible(true);
button1.addActionListener(this);
button2.addActionListener(this);
}
publicvoidactionPerformed(ActionEvente){
Stringsource=e.getActionCommand();
if(source.equals("按钮一")){
System.out.println("你按了按钮一");
}
if(source.equals("按钮二")){
System.out.println("你按了按钮二");
}
}
publicstaticvoidmain(Stringargs[]){
newTest_01();
}
}
利用一个监听器来处理事件的缺点是:其实当处理的事件比较少的时候,这种方式还是一种比较好的方式,它简单。当程序比较复杂时,需要一大串的if语句来实现。程序的代码比较难阅读和维护。
他与getSource有什么区别
getSource()
Returns:
The object on which the Event initially occurred.
依赖于事件对象
getActionCommand()
Returns the command name of the action event fired by this button. If the command name is null (default) then this method returns the label of the button.
依赖于按钮上的字符串
getSource得到的组件的名称,而getActionCommand得到的是标签。
如:Button bt=new Button("buttons");
用getSource得到的是bt 而用getActionCommand得到的是:buttons