package jj;
public class _9 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
WindowOperation win=new WindowOperation();
win.setBounds(100,100,390,360);
win.setTitle(“简单计算机”);
}
}
package jj;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JComboBox;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class ComputerListener implements ActionListener{
JTextField inputNumberOne,inputNumberTwo;
JTextArea textshow;
String fuhao;
public void setJTextFieldOne(JTextField t)
{inputNumberOne=t;
}
public void setJTextFieldTwo(JTextField t)
{inputNumberTwo=t;
}public void setJTextArea(JTextArea area)
{textshow=area;
}public void setFuhao(String s)
{fuhao=s;}
@Override
public void actionPerformed(ActionEvent e) {
// TODO 自动生成的方法存根
try{
double number1=Double.parseDouble(inputNumberOne.getText());
double number2=Double.parseDouble(inputNumberTwo.getText());
double result=0;
if(fuhao.equals("+"))
{
result=number1+number2;
}
else if(fuhao.equals("-"))
{
result=number1-number2;
}
else if(fuhao.equals(""))
{result=number1number2;}
else if(fuhao.equals("/"))
{result=number1/number2;}
textshow.append(number1+""+fuhao+""+number2+"="+result+"\n");
}
catch (Exception exp){
textshow.append("\n请输入数字字符\n");
}
}
}
package jj;
import javax.swing.JComboBox;
import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.*;
@SuppressWarnings(“unused”)
public class OperatorListener implements ItemListener {
@SuppressWarnings(“rawtypes”)
JComboBox choice;
ComputerListener workTogether;
public void setJComboBox(@SuppressWarnings(“rawtypes”) JComboBox box)
{choice=box;
}
public void setWorkTogether(ComputerListener computer)
{workTogether=computer;
}
public void itemStateChanged(ItemEvent e) {
// TODO 自动生成的方法存根
String fuhao=choice.getSelectedItem().toString();
workTogether.setFuhao(fuhao);
}
}
package jj;
import java.awt.;
import javax.swing.;
import java.io.;
@SuppressWarnings({ “serial”, “unused” })
public class WindowOperation extends JFrame {
JTextField inputNumberOne,inputNumberTwo;
@SuppressWarnings(“rawtypes”)
JComboBox choiceFuhao;
JTextArea textshow;
JButton button;
OperatorListener operator;
ComputerListener computer;
public WindowOperation(){
init ();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
@SuppressWarnings({ “unchecked”, “rawtypes” })
void init() {
// TODO 自动生成的方法存根
setLayout(new FlowLayout());
inputNumberOne=new JTextField(5);
inputNumberTwo=new JTextField(5);
choiceFuhao=new JComboBox();
button=new JButton(“计算”);
choiceFuhao.addItem(“选择运算符号:”);
String []a={"+","-","","/"};
for(int i=0;i<a.length;i++)
{choiceFuhao.addItem(a[i]);
}
textshow=new JTextArea(9,30);
operator=new OperatorListener();
computer=new ComputerListener();
operator.setJComboBox(choiceFuhao);
operator.setWorkTogether(computer);
computer.setJTextFieldOne(inputNumberOne);
computer.setJTextFieldTwo(inputNumberTwo);
computer.setJTextArea(textshow);
choiceFuhao.addItemListener(operator);
button.addActionListener(computer);
add(inputNumberOne);
add(choiceFuhao);
add(inputNumberTwo);
add(button);
add(new JScrollPane(textshow));
}
}