⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 computer.java

📁 java经典10例子
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;

class CalcAppDemo extends Frame{
    private TextField t_result;
    private Panel p_main;//主面板
    private Panel p_num;//数字面板
    private Panel p_oper;//操作符面板
    private Panel p_show;//显示面板
    private Button b_num[];//数字按钮
    private Button b_oper[];//操作符按钮
    private String opn[] = {"0","0"};//二元操作数
    private String num ="";//与显示框对应的字符串

    public CalcAppDemo(String title){
		setTitle(title);
		t_result = new TextField("0.0",21);
		p_main = new Panel();
		p_num = new Panel();
		p_oper = new Panel();
		p_show = new Panel();
		p_main.setLayout(new BorderLayout());
		p_num.setLayout(new GridLayout(4,3,1,1));
		p_oper.setLayout(new GridLayout(4,2,1,1));
		
		b_num = new Button[12];
		for(int i = 0;i < 9;i++){
	        b_num[i] = new Button(new Integer(i+1).toString());
		}
		b_num[9] = new Button("0");
		b_num[10] = new Button("cls");
		b_num[11] = new Button(".");
		for(int i = 0;i < 12;i++){
	        p_num.add(b_num[i]);
		}
		
		b_oper = new Button[8];
		b_oper[0] = new Button("+");
		b_oper[1] = new Button("-");
		b_oper[2] = new Button("*");
		b_oper[3] = new Button("/");
		b_oper[4] = new Button("pow");
		b_oper[5] = new Button("sqrt");
		b_oper[6] = new Button("+/-");
		b_oper[7] = new Button("=");
		for(int i = 0;i < 8;i++){
	        p_oper.add(b_oper[i]);
		}
		
		t_result.setEditable(false);
		p_show.add(t_result,BorderLayout.NORTH);
		p_main.add(p_show,BorderLayout.NORTH);
		p_main.add(p_num,BorderLayout.WEST);
		p_main.add(p_oper,BorderLayout.EAST);
		this.add(p_main,BorderLayout.CENTER);
		setSize(400,400);
		setResizable(false);
		pack();
		
		this.addWindowListener(new WindowAdapter(){
			public void windowClosing(WindowEvent e){
				    System.exit(0);
			}
		});
		ButtonListener bl = new ButtonListener();
		for(int i=0;i<12;i++){
			b_num[i].addActionListener(bl);
		}
		for(int i = 0;i < 8;i++){
	    	b_oper[i].addActionListener(bl);
	    }
	    
	    num = "";
	    opn[1]="";
	}

	class ButtonListener implements ActionListener{
		public void actionPerformed(ActionEvent e){
    		String label;
    		double res=0;
    		double tmp_oper[] = new double[2];
    		label =((Button)e.getSource()).getLabel();
    		
    		if(!num.equals("")){
    			t_result.setText(num);
    			opn[0]= num;
    			opn[1] = t_result.getText();
    			for(int i=0;i<2;i++){
    				tmp_oper[i]=new Double(opn[i]).doubleValue();
    			}
    		}else{
    			num = "";
    			tmp_oper[0]=0.0d;
    			tmp_oper[1]=0.0d;
    		}
    		
    		if(label.equals("+")){
    			num = new Double(tmp_oper[0]+tmp_oper[1]).toString();
    		}else if(label.equals("-")){
    			num = new Double(tmp_oper[0]-tmp_oper[1]).toString();
    		}else if(label.equals("*")){
    			num = new Double(tmp_oper[0]*tmp_oper[1]).toString();
    		}else if(label.equals("/")){
    			try{
    				num = new Double(tmp_oper[0]/tmp_oper[1]).toString();
    			}catch(ArithmeticException ae){}
    		}else if(label.equals("pow")){
    			num = new Double(Math.pow(tmp_oper[0],tmp_oper[1])).toString();
    		}else if(label.equals("sqrt")){
    			num = new Double(Math.sqrt(tmp_oper[0])).toString();
    		}else if(label.equals("cls")){
    			num = "0";
    		}else if(label.equals("=")){
    			t_result.setText(num);
    		}else if(label.equals("+/-")){
    			if ( num.indexOf( "-" ) < 0 ){
    				num = "-"+num;
    			}
    			t_result.setText(new Double(num).toString());
    		}else if(label.equals(".")){
    		}else{
    			num+=label;
    			opn[1]=num;
			    t_result.setText(num);
    		}
		}	    		 
	}
	
    public static void main(String args[]){
		CalcAppDemo c = new CalcAppDemo("简单的计算器程序");
		c.setVisible(true);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -