使用按钮和单选按钮总计时出现问题

时间:2019-11-29 12:37:32

标签: java

我正在做一个订购冰淇淋的程序,用户首先应该在圆锥形或杯形之间选择(作为按钮),当他单击按钮时,总显示在“文本”字段中,然后他可以继续选择口味作为复选框,并且每当他添加额外的风味时,总计就会增加

问题是,当我开始单击按钮时,它会显示总计,但是当我选择一种口味时,总计却没有添加,而是被该口味的价格所取代,当我返回选择圆锥形或杯形时,它将将我选择的价格加到总计

public void actionPerformed(ActionEvent e){
        String a = e.getActionCommand();
         total = 0;
         if(a.equals("cone")){
                total = (total +7); 
            t1.setText(Double.toString(total));

        } else if(a.equals("cup")){
                total = (total +5); 
            t1.setText(Double.toString(total));

            }
        if(RB3.isSelected()){

        total = total +7; 
            t1.setText(Double.toString(total));

        }
        if(RB2.isSelected()){

                total = (total +7); 
            t1.setText(Double.toString(total));

        }if(RB1.isSelected()){

                total = (total +7); 
            t1.setText(Double.toString(total));

这是actionPerformed的代码

1 个答案:

答案 0 :(得分:0)

在动作例程程序开始时,您将total设置为0。如果要使其反映单击按钮之前所具有的值,则需要在例程之外声明它,以便在添加到它时仍具有先前的值。

编辑:我看到在将total设置为0之后,您添加了圆锥和杯形,但是仅当action命令指示用户对此动作选择了一个时,才添加圆锥和杯。如果在选择口味时,动作命令与锥体或杯子不同,则总数将保持为0;否则,total将获得杯形或圆锥形的值。该值可能与操作前total的值不同。