[java]ItemEvent事件:简单计算器
来源:互联网 发布:砸金蛋抽奖软件 编辑:程序博客网 时间:2024/06/16 12:56
代码:
Example9_8.javapublic class Example9_8{public static void main(String args[]){WindowOperation win = new WindowOperation();win.setBounds(100,100,390,360);win.setTitle("简单计算器");}}WindowOperation.javaimport java.awt.*;import javax.swing.*;import java.io.*;public class WindowOperation extends JFrame{JTextField inputNumberOne,inputNumberTwo;JComboBox choiceFuhao;JTextArea textShow;JButton button;OperatorListener operator;ComputerListener computer;public WindowOperation(){init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}void init(){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));}}OperatorListener.javaimport java.awt.event.*;import javax.swing.*;public class OperatorListener implements ItemListener{JComboBox choice;ComputerListener workTogether;public void setJComboBox(JComboBox box){choice =box;}public void setWorkTogether(ComputerListener computer){workTogether=computer;}public void itemStateChanged(ItemEvent e){String fuhao= choice.getSelectedItem().toString();workTogether.setFuhao(fuhao);}}ComputerListener.javaimport java.awt.event.*;import javax.swing.*;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;}public void actionPerformed(ActionEvent e){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=number1/number2;}else if(fuhao.equals("*")){result=number1*number2;}textShow.append(number1+" "+fuhao+" "+number2+" = "+result+"\n");}catch(Exception exp){textShow.append("\n请输入数字字符\n");}}}
运行截图:
- [java]ItemEvent事件:简单计算器
- Java捕获选项事件ItemEvent
- ItemEvent事件
- 用ItemEvent来处理JComboBox的事件为什么不行?
- 简单的java计算器
- JAVA简单计算器
- java 简单计算器
- Java 简单计算器
- 简单计算器java源码
- java 简单计算器
- Java 简单的计算器
- 简单计算器(java)
- Java实现简单计算器
- java简单计算器
- 【Java】简单计算器实现
- JAVA实现简单计算器
- Java简单计算器
- java简单计算器
- IIS 和 Apache Rewrite的写法风格有区别
- 划分树的用法(一):查询区间第K大值值(poj2104)
- MySQL Connector/ODBC 5.2.4 发布
- 第47天的交易(2013-5-30)(-100)(-217)
- UThash 的数据结构
- [java]ItemEvent事件:简单计算器
- singular value decomposition----SVD
- 进程关系之进程组、会话和控制终端
- matlab练习程序(SUSAN检测)
- python列表排序
- Serializable初次学习
- 关于精度宽度设置
- Hdu 1754——I Hate It
- python os模块,平常操作文件方便,执行cmd命令