简单计算器-功能实现
来源:互联网 发布:plsql怎么导出表数据 编辑:程序博客网 时间:2024/05/21 10:42
import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.JFrame;public class BaseFrame extends JFrame{public BaseFrame (String title){setLayout(null);setTitle(title);setSize(800,800);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});//关闭窗口的匿名类setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);}public void showMe(){setVisible(true);}}
import java.awt.Dimension;import java.awt.GridLayout;import java.awt.event.*;//btn[0].setText("1");//btn[1].setText("2");//btn[2].setText("3");//btn[3].setText("+");//btn[4].setText("4");//btn[5].setText("5");//btn[6].setText("6");//btn[7].setText("-");//btn[8].setText("7");//btn[9].setText("8");//btn[10].setText("9");//btn[11].setText("*");//btn[12].setText("0");//btn[13].setText(".");//btn[14].setText("=");//btn[15].setText("/");import javax.swing.*;public class Calc implements ActionListener { JTextField t1=new JTextField();public Calc(){BaseFrame f=new BaseFrame("hello");JPanel j1=new JPanel();JPanel j2=new JPanel();j1.setSize(800,100);j2.setBounds( 0,100, 800, 700);j1.setLayout(new GridLayout(1,1));j1.add(t1);j2.setLayout(new GridLayout(4,4));final String[] str = { "1", "2", "3", "+","4", "5", "6", "-", "7", "8", "9","*", "0", ".","=","/" };int n=16;JButton[] btn=new JButton[n];for(int i=0;i<n;i++){btn[i]=new JButton(str[i]);btn[i].setPreferredSize(new Dimension(50,50));j2.add(btn[i]);}f.add(j1);f.add(j2);f.showMe();t1.addActionListener(this); for (int i = 0; i < str.length; i++) btn[i].addActionListener(this); } boolean FIRDT = true; double number = 0; String operator = "="; public void actionPerformed(ActionEvent e) { String t = e.getActionCommand(); if ("0123456789.".indexOf(t) != -1) calcNumber(t); else handleOperator(t); } public void calcNumber(String key) { if (FIRDT) t1.setText(key); else if ((key.equals(".")) && (t1.getText().indexOf(".") !=-1)) t1.setText(t1.getText() + "."); else if (!key.equals(".")) t1.setText(t1.getText() + key); FIRDT = false; } public void handleOperator(String key) { if (operator.equals("+")) number += Double.valueOf(t1.getText()); else if (operator.equals("-")) number -= Double.valueOf(t1.getText()); else if (operator.equals("*")) number *= Double.valueOf(t1.getText()); else if (operator.equals("/")) number /= Double.valueOf(t1.getText()); else if (operator.equals("=")) number = Double.valueOf(t1.getText()); t1.setText(String.valueOf(number)); operator = key; FIRDT = true; }public static void main(String[] args) {new Calc();}}
1 0
- 计算器功能简单实现
- 简单计算器-功能实现
- 简单计算器功能实现
- MFC实现简单功能计算器
- C#实现简单计算器功能
- 栈实现计算器简单功能
- 简单计算器的功能实现
- C++实现简单计算器功能
- Andorid实现简单计算器功能
- 简单工厂实现计算器功能
- 一个能够实现简单功能的计算器
- Java实现简单计算器的加减乘除功能
- Android实现简单的计算器功能
- 编程实现简单的计算器功能
- Java实现简单计算器功能【简单工厂模式】
- 简单的计算器功能
- 简单的计算器功能
- Android实现简单计算器功能(Button控件实现)
- App冷启动白屏/黑屏问题分析及解决方案
- 【红白游戏机】关于单片机与上位机保持同波特率的理解
- RecycleView
- homerHEVC代码阅读(31)——帧间预测之AMVP模式(常规帧间预测)
- PMP学习笔记之第13章 项目干系人管理 ——13.3管理干系人参与
- 简单计算器-功能实现
- UE4 里面 动态把Charactor跟playercontroller绑定
- 弹窗居中设置
- 【POJ 2785 4 Values whose Sum is 0】+ 折半枚举(双项搜索))
- C#——输入某日期,判断该日期对应星期几
- 07-图4 哈利·波特的考试
- redis源码分析 -- cs结构之服务器
- VMWare虚拟机提供的桥接、nat和主机模式的区别
- 循环双向链表的实现