代码如下:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class Counter
{
public static void main(String[] args)
{
JFrame frame=new CounterFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}class CounterFrame extends JFrame
{
public static final int WIDTH = 350;
public static final int HEIGHT = 150;
//计算显示文本。
private TextField textField1 = new TextField(5);
private TextField textField2 = new TextField(5);
private TextField textresult = new TextField(5);

private JComboBox combo = new JComboBox();
    combo.addItem("+");
    combo.addItem("-");
    combo.addItem("*");
    combo.addItem("/"); public CounterFrame()
{
setSize(WIDTH, HEIGHT);
setTitle("Counter");
Container contentPane = getContentPane(); JPanel textPanel = new JPanel();
textPanel.add(textField1);
textPanel.add(textField2);
textPanel.add(combo);
textPanel.add(textresult);//计算的按钮。
JPanel buttonPanel = new JPanel();
addButton(buttonPanel, "计算",
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
computer();
}
}
);

//文本框清空
addButton(buttonPanel, "清除",
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
textField1.setText("");
textField2.setText("");
textresult.setText("");
}
}
);//退出的按钮,并退出程序。
addButton(buttonPanel, "退出",
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
System.exit(0);
}
}
); contentPane.add(textPanel, BorderLayout.NORTH);
contentPane.add(buttonPanel, BorderLayout.SOUTH);
} public void addButton(Container c, String title, ActionListener 
listener)
{
JButton button = new JButton(title);
c.add(button);
button.addActionListener(listener);
} public void computer()
{
float a,b,result,index;
a=Float.parseFloat(textField1.getText());
b=Float.parseFloat(textField2.getText());
index=combo.getSelectedIndex();
        switch (index)
        {
         case 0:
            result=a+b;
            break;
         case 1:
            result=a-b;
            break;
         case 2:
            result=a*b;
            break;
         case 3:
            result=a/b;
        }

textresult.setText(Float.toString(result)); }
}编译addItem出错。

解决方案 »

  1.   

    combo.addItem("+");
    combo.addItem("-");
    combo.addItem("*");
    combo.addItem("/");报这些行出错,请高手指点啊
      

  2.   

    写成
    {
    combo.addItem("+");
    combo.addItem("-");
    combo.addItem("*");
    combo.addItem("/");
    }
    即可
      

  3.   

    combo.addItem("+");
        combo.addItem("-");
        combo.addItem("*");
        combo.addItem("/");应该要放在初始化里的啊,这个又有不是定义
      

  4.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;public class Counter
    {
    public static void main(String[] args)
    {
    JFrame frame=new CounterFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.show();
    }
    }class CounterFrame extends JFrame
    {
    public static final int WIDTH = 350;
    public static final int HEIGHT = 150;
    //计算显示文本。
    private TextField textField1 = new TextField(5);
    private TextField textField2 = new TextField(5);
    private TextField textresult = new TextField(5);private JComboBox combo = new JComboBox();
       
    public CounterFrame()
    {
    setSize(WIDTH, HEIGHT);
    setTitle("Counter");
    Container contentPane = getContentPane(); combo.addItem("+");
     combo.addItem("-");
     combo.addItem("*");
     combo.addItem("/");
    JPanel textPanel = new JPanel();
    textPanel.add(textField1);
    textPanel.add(textField2);
    textPanel.add(combo);
    textPanel.add(textresult);//计算的按钮。
    JPanel buttonPanel = new JPanel();
    addButton(buttonPanel, "计算",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    computer();
    }
    }
    );//文本框清空
    addButton(buttonPanel, "清除",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    textField1.setText("");
    textField2.setText("");
    textresult.setText("");
    }
    }
    );//退出的按钮,并退出程序。
    addButton(buttonPanel, "退出",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    System.exit(0);
    }
    }
    );contentPane.add(textPanel, BorderLayout.NORTH);
    contentPane.add(buttonPanel, BorderLayout.SOUTH);
    }public void addButton(Container c, String title, ActionListener 
    listener)
    {
    JButton button = new JButton(title);
    c.add(button);
    button.addActionListener(listener);
    }public void computer()
    {
    float a,b,result=0;
    int index = 0;
    a=Float.parseFloat(textField1.getText());
    b=Float.parseFloat(textField2.getText());
    index=combo.getSelectedIndex();
            switch (index)
            {
            case 0:
               result=a+b;
               break;
            case 1:
               result=a-b;
               break;
            case 2:
               result=a*b;
               break;
            case 3:
               result=a/b;
            }textresult.setText(Float.toString(result));}
    }
      

  5.   

    public CounterFrame()
    {
    setSize(WIDTH, HEIGHT);
    setTitle("Counter");
    Container contentPane = getContentPane(); combo.addItem("+");
     combo.addItem("-");
     combo.addItem("*");
     combo.addItem("/");public void computer()
    {
    float a,b,result=0;
    int index = 0;
      

  6.   

    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;class Counter
    {
    public static void main(String[] args)
    {
    JFrame frame=new CounterFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.show();
    }
    }class CounterFrame extends JFrame
    {
    public static final int WIDTH = 350;
    public static final int HEIGHT = 150;
    //计算显示文本。
    private TextField textField1 = new TextField(5);
    private TextField textField2 = new TextField(5);
    private TextField textresult = new TextField(5);
    private JComboBox combo;

    public CounterFrame()
    {
    setSize(WIDTH, HEIGHT);
    setTitle("Counter");
    Container contentPane = getContentPane();

    ComboBoxModel combomodel=new DefaultComboBoxModel(
       new String[]{"+","-","*","/"});
       JComboBox combo = new JComboBox();
    combo.setModel(combomodel);

    JPanel textPanel = new JPanel();
    textPanel.add(textField1);
    textPanel.add(textField2);
    textPanel.add(combo);
    textPanel.add(textresult);

    //计算的按钮。
    JPanel buttonPanel = new JPanel();
    addButton(buttonPanel, "计算",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    computer();
    }
    });


    //文本框清空
    addButton(buttonPanel, "清除",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    textField1.setText("");
    textField2.setText("");
    textresult.setText("");
    }
    });
    //退出的按钮,并退出程序。
    addButton(buttonPanel, "退出",
    new ActionListener()
    {
    public void actionPerformed(ActionEvent evt)
    {
    System.exit(0);
    }
    });


    contentPane.add(textPanel, BorderLayout.NORTH);
    contentPane.add(buttonPanel, BorderLayout.SOUTH);
    }

    public void addButton(Container c, String title, ActionListener listener)
    {
    JButton button = new JButton(title);
    c.add(button);
    button.addActionListener(listener);
    }

    public void computer()
    {
    float a,b,result=0,index;
    a=Float.parseFloat(textField1.getText());
    b=Float.parseFloat(textField2.getText());
    index=combo.getSelectedIndex();
            switch ((int)index)
            {
            case 0:
               result=a+b;
               break;
            case 1:
               result=a-b;
               break;
            case 2:
               result=a*b;
               break;
            case 3:
               result=a/b;
            }

    textresult.setText(Float.toString(result));

    }
    }