the errors are commented in the code:
help???

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.lang.*;


public class Kol2_1 extends Applet implements ActionListener
{
    Button plus  = new Button("+");
    Button minus = new Button("-");
    Button times = new Button("*");
    Button div   = new Button("/");
    Button eq    = new Button("=");
    
    TextField pole = new TextField("E hej zver");
    
    double x=0.0,y=0.0, z;        
        
    
    public void init()
    {    
        try{
        x=Double.parseDouble(JOptionPane.showInputDialog("Vnesete vrednost za x:"));
        y=Double.parseDouble(JOptionPane.showInputDialog("Vnesete vrednost za y:"));
           }
        catch(StringIndexOutOfBoundsException n)
        {JOptionPane.showMessageDialog(this, "Vnesete broj.");}    

        setLayout(new GridLayout(4,2));
        add(plus);
        add(minus);
        add(times);
        add(div);
        add(eq);
        add(pole);
        
        plus.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        minus.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        times.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        div.addActionPerformed(this);   /*cannot find symbol method addActionPerformed(Kol2_1)*/
        eq.addActionPerformed(this);   /*cannot find symbol method addActionPerformed(Kol2_1)*/
        
        
        
        
    }
    
    public void actionPerformed(ActionEvent e)
        {
            switch(e.getSource()){            //incompatible types
                case    plus:     {    z=x+y;}
                case    minus:  {    z=x-y;}
                case    times:  {    z=x*y;}
                case    div:    {    try{z=x/y;}
                                    catch(NumberFormatException m)
                                    {
                                        if(y==0) JOptionPane.showMessageDialog(this,"Division by zero.");
                                    }
                                }
                case    eq:     {pole.setText(""+z);}
            }
    }
}

Recommended Answers

All 4 Replies

*squints at code*

.....

Haha, silly me. I missed this at first glance.

1) instead of *.addActionPerformed(this); use *.addActionListener(this); 2) e.getSource() returns an Object, and switch statements work with int values. ;) Might wanna reconsider, with casting and/or an if-else statement.

you are giving plus.addactionPerformed(this);. you should not give like that. please give plus.addActionListener(this);. and then after finishing the constructor write the method

public void actionPerformed(ActionEvent e)
{
String s=e.getActionCommand();
if(s.equals("+"))
{....}
}

here e.getActionCommand() method return the caption(that is the string that you written on the button). and then check whether it it equal to +,-,*,/ and then perform the relevant action.


the errors are commented in the code:
help???

import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.lang.*;
 
 
public class Kol2_1 extends Applet implements ActionListener
{
    Button plus  = new Button("+");
    Button minus = new Button("-");
    Button times = new Button("*");
    Button div   = new Button("/");
    Button eq    = new Button("=");
 
    TextField pole = new TextField("E hej zver");
 
    double x=0.0,y=0.0, z;        
 
 
    public void init()
    {    
        try{
        x=Double.parseDouble(JOptionPane.showInputDialog("Vnesete vrednost za x:"));
        y=Double.parseDouble(JOptionPane.showInputDialog("Vnesete vrednost za y:"));
           }
        catch(StringIndexOutOfBoundsException n)
        {JOptionPane.showMessageDialog(this, "Vnesete broj.");}    
 
        setLayout(new GridLayout(4,2));
        add(plus);
        add(minus);
        add(times);
        add(div);
        add(eq);
        add(pole);
 
        plus.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        minus.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        times.addActionPerformed(this);  /*cannot find symbol method addActionPerformed(Kol2_1)*/
        div.addActionPerformed(this);   /*cannot find symbol method addActionPerformed(Kol2_1)*/
        eq.addActionPerformed(this);   /*cannot find symbol method addActionPerformed(Kol2_1)*/
 
 
 
 
    }
 
    public void actionPerformed(ActionEvent e)
        {
            switch(e.getSource()){            //incompatible types
                case    plus:     {    z=x+y;}
                case    minus:  {    z=x-y;}
                case    times:  {    z=x*y;}
                case    div:    {    try{z=x/y;}
                                    catch(NumberFormatException m)
                                    {
                                        if(y==0) JOptionPane.showMessageDialog(this,"Division by zero.");
                                    }
                                }
                case    eq:     {pole.setText(""+z);}
            }
    }
}

thanks alot

how to create a java program using applets in calculate for grocerry items please help me....

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.