生活随笔
收集整理的這篇文章主要介紹了
Java用awt编写计算器(只有加减乘除)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java用awt編寫計算器(只有加減乘除)
結果演示:
import java
.awt
.BorderLayout
;
import java
.awt
.Button
;
import java
.awt
.Color
;
import java
.awt
.Frame
;
import java
.awt
.GridLayout
;
import java
.awt
.Panel
;
import java
.awt
.TextField
;
import java
.awt
.event
.WindowAdapter
;
import java
.awt
.event
.WindowEvent
;public class CalFrame extends Frame {public TextField txt
;public boolean flag
=false;public int numflag
=0;public String operator
="";public double num1
;public double num2
;public CalFrame(String title
) {super(title
);init();}private void init() {this.setBounds(100, 100, 160, 220);txt
=new TextField();this.add(txt
, BorderLayout
.NORTH
);Panel panel
=new Panel();GridLayout gl
=new GridLayout(4,4,1,1);panel
.setLayout(gl
);this.add(panel
);Button
[] btn
= {new Button("7"),new Button("8"),new Button("9"),new Button("+"),new Button("4"),new Button("5"),new Button("6"),new Button("-"),new Button("1"),new Button("2"),new Button("3"),new Button("*"),new Button("0"),new Button("."),new Button("="),new Button("/")};for(int i
=0;i
<btn
.length
;i
++) {panel
.add(btn
[i
]);}for(int i
=0;i
<btn
.length
;i
++) {if(i
!=3&&i
!=7&&i
!=11&&i
!=15&&i
!=14) {btn
[i
].addMouseListener(new NumberButtonListener(this));}else {btn
[i
].addMouseListener(new OperatorButtonListener(this));}}this.setVisible(true);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e
) {CalFrame
.this.dispose();} });}
}
import java
.awt
.Button
;
import java
.awt
.event
.MouseAdapter
;
import java
.awt
.event
.MouseEvent
;public class NumberButtonListener extends MouseAdapter {private CalFrame frame
;public NumberButtonListener(CalFrame frame
) {this.frame
= frame
;}@Overridepublic void mouseClicked(MouseEvent e
) {Button btn
=(Button
)e
.getSource();String num
=btn
.getLabel();if(frame
.numflag
==0) {frame
.numflag
=1;}if(!frame
.flag
) {frame
.txt
.setText(num
);frame
.flag
=true;}else {frame
.txt
.setText(frame
.txt
.getText()+num
);}}}
import java
.awt
.Button
;
import java
.awt
.event
.MouseAdapter
;
import java
.awt
.event
.MouseEvent
;public class OperatorButtonListener extends MouseAdapter {private CalFrame frame
;public OperatorButtonListener(CalFrame frame
) {this.frame
= frame
;}@Overridepublic void mouseClicked(MouseEvent e
) {frame
.flag
=false;if(frame
.numflag
==1) {frame
.numflag
=2;String num1Str
=frame
.txt
.getText();frame
.num1
=Double
.parseDouble(num1Str
);Button btn
=(Button
)e
.getSource();frame
.operator
=btn
.getLabel();}else if(frame
.numflag
==2) {String num2Str
=frame
.txt
.getText();frame
.num2
=Double
.parseDouble(num2Str
);if("+".equals(frame
.operator
)) {frame
.num1
=frame
.num1
+frame
.num2
;}else if("-".equals(frame
.operator
)) {frame
.num1
=frame
.num1
-frame
.num2
;}else if("*".equals(frame
.operator
)) {frame
.num1
=frame
.num1
*frame
.num2
;}else if("/".equals(frame
.operator
)) {frame
.num1
=frame
.num1
/frame
.num2
;}frame
.num2
=0;Button btn
=(Button
)e
.getSource();frame
.operator
=btn
.getLabel();if("=".equals(frame
.operator
)) {frame
.txt
.setText(frame
.num1
+"");frame
.numflag
=0;frame
.flag
=false;}}}}
public class Counter {public static void main(String
[] args
) {new CalFrame("計算器");}
}
總結
以上是生活随笔為你收集整理的Java用awt编写计算器(只有加减乘除)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。