这段程序的单击事件不能执行,点击后出现如下错误:at java.awt.Component.dispatchEventImpl(Unknown Sou

事件类如下:
package view1;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.sql.Timestamp;
import javax.swing.JOptionPane;
import view.AddEquipment;
public class EAControl implements ActionListener,ItemListener {
private AddEquipment eq;
public EAControl(AddEquipment equipment) {
eq=equipment;
}
public void actionPerformed(ActionEvent e) {
int big=eq.bigcbx.getSelectedIndex();
int small=eq.smallcbx.getSelectedIndex();
int stute=eq.stutecbx.getSelectedIndex();
String name=eq.nametex.getText().trim();
String model=eq.modeltex.getText().trim();
float value=Float.valueOf(eq.valuetex.getText().trim()).floatValue();
String remark=eq.notetex.getText().trim();
Object button=e.getSource();
if (button==eq.addbtn)
{

}
if (button==eq.cancelbtn)
{
eq.nametex.setText("");
eq.modeltex.setText("");
eq.notetex.setText("");
eq.valuetex.setText("");
eq.datetex.setText("");
return;
}
}
public void itemStateChanged(ItemEvent e){
//JOptionPane.showMessageDialog(null,"响应按钮单击事件1");
Object big=e.getItem();
if (big.equals("办公室外设"))
{
eq.smallchange(1);
}
if (big.equals("数码产品"))
{
eq.smallchange(2);
}
if (big.equals("计算机"))
{
eq.smallchange(3);
}
itemStateChanged事件能执行
把float value=Float.valueOf(eq.valuetex.getText().trim()).floatValue();这句话去掉,就正常了,不知道是不是这句话有错误从书上抄的。错误提示:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Float.valueOf(Unknown Source)
at view1.EAControl.actionPerformed(EAControl.java:20)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)

第1个回答  推荐于2018-01-09
NumberFormatException:empty String
异常提示的就是你需要格式化的是个空串(""),不能转换成float格式。

float value=Float.valueOf(eq.valuetex.getText().trim()).floatValue();可以修改下
String valuetex = eq.valuetex.getText().trim());
if("".equals(valuetex )){
valuetex = "0";
}
float value = Float.valueOf(valuetex).floatValue();本回答被网友采纳
第2个回答  2011-03-03
eq.valuetex.getText().trim()得到的值是“”,所以在数字格式转化时才会出错的本回答被提问者采纳
第3个回答  2018-01-09

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String 这句话已经告诉你了

float value=Float.valueOf(eq.valuetex.getText().trim()).floatValue();这句代码中eq.valuetex.getText().trim()为空导致程序报错,要检查一下

第4个回答  2011-03-03
来看一下.

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网