久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

java awt實現計算器功能

瀏覽:2日期:2022-08-19 14:38:30

本文實例為大家分享了java awt實現計算器的具體代碼,供大家參考,具體內容如下

java awt實現計算器功能

上課老師演示了一遍他的寫法,由于沒給代碼,因此按著他的思路擼了一遍,感覺還很簡單。

代碼以及解釋如下:

import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;public class Caculate1 { static String s1=''; static String s2=''; static int f=9; static int num1=0,num2=0; public static void main(String[] args) { int x=0,y=0,z=0; JFrame jf=new JFrame( '我的計算器'); jf.setBounds(0,0,300,400);// jf.setBackground(bgColor); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); JTextField show=new JTextField('0'); //此處為布局:也就是定義五個容器,(也可以理解為將定義的JFrame空間分為5個容器) JPanel jp1=new JPanel(new GridLayout(1,3));//存儲: JPanel jp2=new JPanel(new GridLayout(1,3)); JPanel jp3=new JPanel(new GridLayout(1,3)); JPanel jp4=new JPanel(new GridLayout(1,3)); JPanel jp5=new JPanel(new GridLayout(1,3)); JButton bt_add=new JButton('+'); JButton bt_sub=new JButton('-'); JButton bt_mul=new JButton('*'); JButton bt_div=new JButton('/'); JButton bt_7=new JButton('7'); JButton bt_8=new JButton('8'); JButton bt_9=new JButton('9'); JButton bt_4=new JButton('4'); JButton bt_5=new JButton('5'); JButton bt_6=new JButton('6'); JButton bt_1=new JButton('1'); JButton bt_2=new JButton('2'); JButton bt_3=new JButton('3'); JButton bt_0=new JButton('0'); JButton bt_c=new JButton('C'); JButton bt_equal=new JButton('='); jf.setLayout(new GridLayout(6,1)); //容器1 :添加 ’+’,’-’,’*’,’/’按鈕 jp1.add(bt_add); jp1.add(bt_sub); jp1.add(bt_mul); jp1.add(bt_div); //容器2:添加’7’,’8’,’9’按鈕 jp2.add(bt_7); jp2.add(bt_8); jp2.add(bt_9); //容器3:添加’4’,’5’,’6’按鈕 jp3.add(bt_4); jp3.add(bt_5); jp3.add(bt_6); //容器4:添加’1’,’2’,’3’按鈕 jp4.add(bt_1); jp4.add(bt_2); jp4.add(bt_3); //容器5:添加’0’,’C’,’=’ jp5.add(bt_0); jp5.add(bt_c); jp5.add(bt_equal); jf.add(show); jf.add(jp1); jf.add(jp2); jf.add(jp3); jf.add(jp4); jf.add(jp5);//元素已經定義好了,思路也很簡單:(1)JFrame定義一個大容器jf,jf= 1個顯示框(show)+5個容器,分別定義顯示框和容器, //(2)類似樹形添加元素的數據結構,為jf添加元素 //下面便是時間監聽了(又稱加載驅動) bt_9.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+9; show.setText(s1); } }); bt_8.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+8; show.setText(s1); } }); bt_7.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+7; show.setText(s1); } }); bt_6.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+6; show.setText(s1); } }); bt_5.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+5; show.setText(s1); } }); bt_4.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+4; show.setText(s1); } }); bt_3.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+3; show.setText(s1); } }); bt_0.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+0; show.setText(s1); } }); bt_2.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+2; show.setText(s1); } }); bt_1.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+1; show.setText(s1); } }); bt_0.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s1=s1+0; show.setText(s1); } }); bt_equal.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { num1=Integer.valueOf(s2); num2=Integer.valueOf(s1); int z=0; char fg=’ ’; switch(f){ case 0: z=num1+num2; fg=’+’; break; case 1: z=num1-num2; fg=’-’; break; case 2: z=num1*num2; fg=’*’; break; case 3: fg=’/’; if(num2==0) num2=num2+1; z=num1/num2; break; default: break; } show.setText(s2+' '+fg+' '+s1+' = '+z); } }); bt_add.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { s2=s1; s1=''; f=0; show.setText(s2+'+'); } }); bt_sub.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub s2 = s1; s1 = ''; f = 1; show.setText(s2 + ' - '); } }); bt_mul.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub s2 = s1; s1 = ''; f = 2; show.setText(s2 + ' * '); } }); bt_div.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub s2 = s1; s1 = ''; f = 3; show.setText(s2 + ' / '); } }); bt_c.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub s2 = ''; s1 = ''; num1 = 0; num2 = 0; f = 9; show.setText('0'); } }); }}

關于計算器的精彩文章請查看《計算器專題》 ,更多精彩等你來發現!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 翁源县| 尤溪县| 政和县| 满城县| 宣汉县| 江阴市| 永嘉县| 巴楚县| 南皮县| 峨边| 新干县| 张家界市| 鄂尔多斯市| 克什克腾旗| 卢氏县| 平谷区| 清水河县| 霞浦县| 马公市| 开江县| 新宁县| 达日县| 固阳县| 莱阳市| 建平县| 新安县| 玛沁县| 沙湾县| 阿坝县| 纳雍县| 铅山县| 竹北市| 黄浦区| 米林县| 招远市| 清流县| 永吉县| 稻城县| 佛坪县| 武宣县| 论坛|