我正在构建一个简单的applet,在我的applet中,我有一个带有下拉列表的组合框。选择一个选项后,按钮"添加"单击,选择并传递给创建对象的方法。唯一的问题是,当我单击按钮时,它会将对象添加好,但是当我尝试添加另一个slelection时,它会删除前一个并将新值设置为与新值相同的属性。所以本质上是重新添加选择。
btnAdd.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
addTooObj(comboBox.getSelectedItem().toString(), lblStatusLabel);
System.out.println(comboBox.getSelectedIndex());
}
});
private void addToobj(String num,JLabel j){
System.out.println(num);
Object objToBeAdded = null;
long objNumber = Long.parseLong(num);
int quan = 0;
if (objNumber == 12354589621l) {
objToBeAdded = new Item(objNumber, 2.00, quan);
} else if (objNumber == 21) {
objToBeAdded = new Item(objNumber, 1.50, quan);
} else if (objNumber == 12) {
objToBeAdded = new Item(objNumber, 5.20, quan);
} else {
System.out.println("error");
}
oldObj.add(objToBeAdded);
}
答案 0 :(得分:0)
在actionPerformed
方法中,您可以获取操作命令并查看已触发的操作,然后仅在操作是您想要的操作时调用您的方法。
public void actionPerformed(ActionEvent e) {
String action = e.getActionCommand();
System.out.println("The action was: " + action);
if(action.equals("What ever action you want")){
addTooObj(comboBox.getSelectedItem().toString(), lblStatusLabel);
System.out.println(comboBox.getSelectedIndex());
}
}