java计算器的图形用户界面代码_java计算器 图形用户界面 简化版

package com.rgy.entity;

import java.awt.*;

import java.awt.event.*;

@SuppressWarnings("serial")

public class Computer extends Frame implements ActionListener{

private Panel panel_keys;

private TextField text_show;

private String str="";

private double num_record=0;

private int count_cut=0;

private int count_multiplication=0;

private int count_division=0;

private int op=0;

private Button button_num0;private Button button_num1;

private Button button_num2;private Button button_num3;

private Button button_num4;private Button button_num5;

private Button button_num6;private Button button_num7;

private Button button_num8;private Button button_num9;

private Button button_division;

private Button button_multiplication;

private Button button_cut;

private Button button_add;

private Button button_equal;

private Button button_point;

public Computer(){

super("计算器");

this.setVisible(true);

this.setBounds(500,250,300,250);

panel_keys=new Panel();

text_show=new TextField();

text_show.setEditable(false);

button_num0=new Button("0");button_num1=new Button("1");

button_num2=new Button("2");button_num3=new Button("3");

button_num4=new Button("4");button_num5=new Button("5");

button_num6=new Button("6");button_num7=new Button("7");

button_num8=new Button("8");button_num9=new Button("9");

button_division=new Button("/");

button_multiplication=new Button("*");

button_cut=new Button("-");

button_add=new Button("+");

button_equal=new Button("=");

button_point=new Button(".");

this.add(text_show,BorderLayout.NORTH);

this.add(panel_keys,BorderLayout.CENTER);

panel_keys.add(button_num7);panel_keys.add(button_num8);panel_keys.add(button_num9);panel_keys.add(button_division);

panel_keys.add(button_num4);panel_keys.add(button_num5);panel_keys.add(button_num6);panel_keys.add(button_multiplication);

panel_keys.add(button_num1);panel_keys.add(button_num2);panel_keys.add(button_num3);panel_keys.add(button_cut);

panel_keys.add(button_num0);panel_keys.add(button_point);panel_keys.add(button_equal);panel_keys.add(button_add);

panel_keys.setLayout(new GridLayout(4,4));

this.addWindowListener(new WinClose());

button_num0.addActionListener(this);

button_num1.addActionListener(this);

button_num2.addActionListener(this);

button_num3.addActionListener(this);

button_num4.addActionListener(this);

button_num5.addActionListener(this);

button_num6.addActionListener(this);

button_num7.addActionListener(this);

button_num8.addActionListener(this);

button_num9.addActionListener(this);

button_division.addActionListener(this);

button_multiplication.addActionListener(this);

button_add.addActionListener(this);

button_cut.addActionListener(this);

button_equal.addActionListener(this);

button_point.addActionListener(this);

}

//键盘事件监听

public void actionPerformed(ActionEvent ev) {

if(ev.getSource()==button_num0){

str=text_show.getText()+"0";

text_show.setText(str);

}

if(ev.getSource()==button_num1){

str=text_show.getText()+"1";

text_show.setText(str);

}

if(ev.getSource()==button_num2){

str=text_show.getText()+"2";

text_show.setText(str);

}

if(ev.getSource()==button_num3){

str=text_show.getText()+"3";

text_show.setText(str);

}

if(ev.getSource()==button_num4){

str=text_show.getText()+"4";

text_show.setText(str);

}

if(ev.getSource()==button_num5){

str=text_show.getText()+"5";

text_show.setText(str);

}

if(ev.getSource()==button_num6){

str=text_show.getText()+"6";

text_show.setText(str);

}

if(ev.getSource()==button_num7){

str=text_show.getText()+"7";

text_show.setText(str);

}

if(ev.getSource()==button_num8){

str=text_show.getText()+"8";

text_show.setText(str);

}

if(ev.getSource()==button_num9){

str=text_show.getText()+"9";

text_show.setText(str);

}

if(ev.getSource()==button_point){

str=text_show.getText()+".";

text_show.setText(str);

}

if(ev.getSource()==button_add){

if(op==5){}

else{

num_record=num_record+Double.parseDouble(str);

}

str="";

text_show.setText(str);

op=1;

}

if(ev.getSource()==button_cut){

if(op==5){}

else{

if(count_cut==0){

num_record=Double.parseDouble(str);

count_cut++;

}

else{

num_record=num_record-Double.parseDouble(str);

}

}

str="";

text_show.setText(str);

op=2;

}

if(ev.getSource()==button_multiplication){

if(op==5){}

else{

if(count_multiplication==0){

num_record=Double.parseDouble(str);

count_multiplication++;

}

else{

num_record=num_record*Double.parseDouble(str);

}

}

str="";

text_show.setText(str);

op=3;

}

if(ev.getSource()==button_division){

if(op==5){}

else{

if(count_division==0){

num_record=Double.parseDouble(str);

count_division++;

}

else{

num_record=num_record/Double.parseDouble(str);

}

}

str="";

text_show.setText(str);

op=4;

}

if(ev.getSource()==button_equal){

if(op==1){

num_record=num_record+Double.parseDouble(str);

}

if(op==2){

num_record=num_record-Double.parseDouble(str);

}

if(op==3){

num_record=num_record*Double.parseDouble(str);

}

if(op==4){

num_record=num_record/Double.parseDouble(str);

}

if(num_record-(int)num_record==0){

text_show.setText(""+(int)num_record);

}

else{

text_show.setText(""+num_record);

}

op=5;

}

}

//窗口事件监听

public class WinClose implements WindowListener {

public void windowOpened(WindowEvent e) {}

public void windowClosing(WindowEvent e) {

System.exit(0);

}

public void windowClosed(WindowEvent e) {}

public void windowIconified(WindowEvent e) {}

public void windowDeiconified(WindowEvent e) {}

public void windowActivated(WindowEvent e) {}

public void windowDeactivated(WindowEvent e) {}

}

}

package com.rgy.Test;

import com.rgy.entity.*;

public class Test {

public static void main(String args[]){

new Computer();

}

}

0818b9ca8b590ca3270a3433284dd417.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值