From b3d9ae740afdbae8ff63a8141e0549dfe07ce8b4 Mon Sep 17 00:00:00 2001 From: amdin Date: Thu, 21 May 2020 11:55:33 +0800 Subject: [PATCH 01/14] test --- src/java2020spring/Test.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/java2020spring/Test.java b/src/java2020spring/Test.java index fc09c19..e36e129 100644 --- a/src/java2020spring/Test.java +++ b/src/java2020spring/Test.java @@ -3,7 +3,7 @@ package java2020spring; public class Test { public static void main(String[] args) { - System.out.println("Hello world!"); + System.out.println("Hello gitee!"); } -- Gitee From ece36f02cab9d4cb909797add9b89676ed0f93bf Mon Sep 17 00:00:00 2001 From: amdin Date: Mon, 25 May 2020 19:07:30 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 11 +++++++++++ src/java2020spring/MainClass.java | 9 +++++++++ src/java2020spring/Methods.java | 5 +++++ 3 files changed, 25 insertions(+) create mode 100644 src/java2020spring/CalculatorFrame.java create mode 100644 src/java2020spring/MainClass.java create mode 100644 src/java2020spring/Methods.java diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java new file mode 100644 index 0000000..5fc7716 --- /dev/null +++ b/src/java2020spring/CalculatorFrame.java @@ -0,0 +1,11 @@ +package java2020spring; + +import java.awt.*; +import javax.swing.*; +public class CalculatorFrame extends JFrame{ + JTextField textResult; + public CalculatorFrame() { + + } +} + diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java new file mode 100644 index 0000000..84c4d6a --- /dev/null +++ b/src/java2020spring/MainClass.java @@ -0,0 +1,9 @@ +package java2020spring; + +public class MainClass { + public static void main(String args[]) { + CalculatorFrame frame=new CalculatorFrame(); + frame.setTitle("Calculator by CZJ"); + frame.setBounds(100,100,250,300); + } +} diff --git a/src/java2020spring/Methods.java b/src/java2020spring/Methods.java new file mode 100644 index 0000000..01e18aa --- /dev/null +++ b/src/java2020spring/Methods.java @@ -0,0 +1,5 @@ +package java2020spring; + +public class Methods { + +} -- Gitee From 8cc4787a258593a1d4f169fef4964cb1694dba8c Mon Sep 17 00:00:00 2001 From: amdin Date: Mon, 25 May 2020 19:08:53 +0800 Subject: [PATCH 03/14] =?UTF-8?q?=E7=AC=AC=E4=B8=80=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/Test.java | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 src/java2020spring/Test.java diff --git a/src/java2020spring/Test.java b/src/java2020spring/Test.java deleted file mode 100644 index e36e129..0000000 --- a/src/java2020spring/Test.java +++ /dev/null @@ -1,10 +0,0 @@ -package java2020spring; - -public class Test { - - public static void main(String[] args) { - System.out.println("Hello gitee!"); - - } - -} -- Gitee From 366672d463bbb185b89fabe87e03b23936dadf11 Mon Sep 17 00:00:00 2001 From: amdin Date: Wed, 27 May 2020 12:41:06 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E7=AC=AC=E4=BA=8C=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=B0=9D=E8=AF=95=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 5fc7716..4af84a1 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -4,6 +4,8 @@ import java.awt.*; import javax.swing.*; public class CalculatorFrame extends JFrame{ JTextField textResult; + JButton button1,button2,button3,button4,button5,button6,button7,button8,button9,button0; + JButton button_clr,button_bkt,button_bse,button_dvi,button_mtp,button_mns,button_pus,button_eql,button_dot,button_save,button_ept; public CalculatorFrame() { } -- Gitee From 871d4ff10709bb23e97a720f6858faa5cc616e29 Mon Sep 17 00:00:00 2001 From: amdin Date: Wed, 27 May 2020 16:56:56 +0800 Subject: [PATCH 05/14] =?UTF-8?q?=E7=AC=AC=E4=BA=8C=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=B0=9D=E8=AF=95=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 17 +++++++++++++++-- src/java2020spring/MainClass.java | 8 ++++++-- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 4af84a1..97bc14a 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -2,12 +2,25 @@ package java2020spring; import java.awt.*; import javax.swing.*; +import javax.swing.border.EmptyBorder; public class CalculatorFrame extends JFrame{ - JTextField textResult; + //定义一些需要的变量 + JLabel labelSave=new JLabel("12345678"); + JTextField textResult=new JTextField(); JButton button1,button2,button3,button4,button5,button6,button7,button8,button9,button0; JButton button_clr,button_bkt,button_bse,button_dvi,button_mtp,button_mns,button_pus,button_eql,button_dot,button_save,button_ept; public CalculatorFrame() { - + setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + //设置一个存数Label和一个输入TextField + labelSave.setBounds(5,5,110,50); + setLayout(null); + labelSave.setFont(new Font("黑体",Font.PLAIN, 25)); + this.add(labelSave); + textResult.setBounds(130,5,155,50); + textResult.setFont(new Font("黑体",Font.PLAIN, 25)); + textResult.setHorizontalAlignment(SwingConstants.RIGHT); + textResult.setVisible(true); + this.add(textResult); } } diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index 84c4d6a..c107fdf 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -1,9 +1,13 @@ package java2020spring; +import javax.swing.JFrame; + public class MainClass { public static void main(String args[]) { CalculatorFrame frame=new CalculatorFrame(); - frame.setTitle("Calculator by CZJ"); - frame.setBounds(100,100,250,300); + frame.setTitle("计算器 By CZJ"); + frame.setVisible(true); + frame.setBounds(500,100,300,400); + frame.setResizable(false); } } -- Gitee From d5a9dedf3e38da4981dfb4d8ed57c4c8e15b97eb Mon Sep 17 00:00:00 2001 From: amdin Date: Mon, 1 Jun 2020 16:29:50 +0800 Subject: [PATCH 06/14] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=B0=9D=E8=AF=95=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 66 +++++++++++++++++++++---- src/java2020spring/MainClass.java | 7 ++- src/java2020spring/Methods.java | 2 +- 3 files changed, 60 insertions(+), 15 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 97bc14a..0ebb24d 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -1,26 +1,72 @@ package java2020spring; import java.awt.*; +import java.awt.event.ActionListener; + import javax.swing.*; import javax.swing.border.EmptyBorder; -public class CalculatorFrame extends JFrame{ +public class CalculatorFrame extends JFrame implements ActionListener{ //定义一些需要的变量 - JLabel labelSave=new JLabel("12345678"); + JLabel labelSave=new JLabel("1234567891011121314"); JTextField textResult=new JTextField(); - JButton button1,button2,button3,button4,button5,button6,button7,button8,button9,button0; - JButton button_clr,button_bkt,button_bse,button_dvi,button_mtp,button_mns,button_pus,button_eql,button_dot,button_save,button_ept; + JPanel panel=new JPanel(); public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置一个存数Label和一个输入TextField - labelSave.setBounds(5,5,110,50); - setLayout(null); - labelSave.setFont(new Font("黑体",Font.PLAIN, 25)); - this.add(labelSave); - textResult.setBounds(130,5,155,50); - textResult.setFont(new Font("黑体",Font.PLAIN, 25)); + textResult.setBounds(15,15,268,55); + textResult.setFont(new Font("微软黑体",Font.PLAIN, 25)); textResult.setHorizontalAlignment(SwingConstants.RIGHT); textResult.setVisible(true); this.add(textResult); + labelSave.setBounds(15,65,268,45); + setLayout(null); + labelSave.setFont(new Font("微软黑体",Font.PLAIN, 25)); + this.add(labelSave); + //编写三个不同的按钮方法并添加按钮到frame中 + aB1("C",15,110,65,65); + aB1("( )",83,110,65,65); + aB1("←",150,110,65,65); + aB1("÷",217,110,65,65); + aB2("7",15,178,65,65); + aB2("8",83,178,65,65); + aB2("9",150,178,65,65); + aB1("×",217,178,65,65); + aB2("4",15,246,65,65); + aB2("5",83,246,65,65); + aB2("6",150,246,65,65); + aB1("-",217,246,65,65); + aB2("1",15,314,65,65); + aB2("2",83,314,65,65); + aB2("3",150,314,65,65); + aB1("+",217,314,65,65); + aB2("保存",15,382,65,65); + aB2("清除",83,382,65,65); + aB2("0",150,382,65,65); + aB3("=",217,382,65,65); + } + public void aB1(String string,int a,int b,int c,int d) { + JButton B1=new JButton(string); + B1.setBounds(a, b, c, d); + B1.setFont(new Font("微软雅黑",Font.BOLD,15)); + B1.setBackground(new Color(96,86,83)); + B1.setForeground(new Color(247,154,51)); + add(B1); + } + public void aB2(String string,int a,int b,int c,int d) { + JButton B2=new JButton(string); + B2.setBounds(a, b, c, d); + B2.setFont(new Font("微软雅黑",Font.BOLD,15)); + B2.setBackground(new Color(96,86,83)); + B2.setForeground(Color.WHITE); + add(B2); + } + public void aB3(String string,int a,int b,int c,int d) { + JButton B3=new JButton(string); + B3.setBounds(a, b, c, d); + B3.setFont(new Font("微软雅黑",Font.BOLD,15)); + B3.setBackground(new Color(247,154,51)); + B3.setForeground(Color.WHITE); + add(B3); } } diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index c107fdf..f8023f1 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -1,13 +1,12 @@ package java2020spring; -import javax.swing.JFrame; - public class MainClass { public static void main(String args[]) { CalculatorFrame frame=new CalculatorFrame(); frame.setTitle("计算器 By CZJ"); frame.setVisible(true); - frame.setBounds(500,100,300,400); + frame.setBounds(500,100,311,500); frame.setResizable(false); - } + } } + diff --git a/src/java2020spring/Methods.java b/src/java2020spring/Methods.java index 01e18aa..8afd9ff 100644 --- a/src/java2020spring/Methods.java +++ b/src/java2020spring/Methods.java @@ -1,5 +1,5 @@ package java2020spring; -public class Methods { +public class Methods{ } -- Gitee From 38d77293154f371550e1d69d5371293c555a08ec Mon Sep 17 00:00:00 2001 From: amdin Date: Mon, 1 Jun 2020 18:34:42 +0800 Subject: [PATCH 07/14] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=B0=9D=E8=AF=952=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 0ebb24d..e5d9f37 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -2,14 +2,17 @@ package java2020spring; import java.awt.*; import java.awt.event.ActionListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.MouseListener; import javax.swing.*; import javax.swing.border.EmptyBorder; + public class CalculatorFrame extends JFrame implements ActionListener{ //定义一些需要的变量 - JLabel labelSave=new JLabel("1234567891011121314"); JTextField textResult=new JTextField(); - JPanel panel=new JPanel(); + JLabel labelSave=new JLabel("1234567891011121314"); public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置一个存数Label和一个输入TextField @@ -51,6 +54,12 @@ public class CalculatorFrame extends JFrame implements ActionListener{ B1.setBackground(new Color(96,86,83)); B1.setForeground(new Color(247,154,51)); add(B1); + B1.addMouseListener(new MouseAdapter() { + public void mouseClicked(MouseEvent e) { + if() + } + } + ); } public void aB2(String string,int a,int b,int c,int d) { JButton B2=new JButton(string); @@ -68,5 +77,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ B3.setForeground(Color.WHITE); add(B3); } + } + -- Gitee From 3c7ff8c0bcd9aefb0a0ced42958a29b66e0a73db Mon Sep 17 00:00:00 2001 From: amdin Date: Thu, 4 Jun 2020 14:59:37 +0800 Subject: [PATCH 08/14] =?UTF-8?q?=E7=AC=AC=E5=9B=9B=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E7=9B=91=E5=90=AC=E5=99=A8=EF=BC=89=20?= =?UTF-8?q?=E5=8F=A6=EF=BC=9A=E7=A8=8B=E5=BA=8F=E5=A4=A7=E6=94=B9=EF=BC=8C?= =?UTF-8?q?=E5=9B=A0=E7=AC=AC=E4=B8=89=E6=AC=A1=E6=8F=90=E4=BA=A4=E6=97=B6?= =?UTF-8?q?=E7=9A=84=E4=BB=A3=E7=A0=81=E9=9A=BE=E4=BB=A5=E5=88=9B=E5=BB=BA?= =?UTF-8?q?=E7=9B=91=E5=90=AC=E5=99=A8=E5=92=8C=E5=AE=9E=E7=8E=B0=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=E5=A4=84=E7=90=86=EF=BC=8C=E9=87=8D=E6=96=B0=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 130 +++++++++++++++--------- src/java2020spring/MainClass.java | 2 +- 2 files changed, 83 insertions(+), 49 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index e5d9f37..c22da65 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -1,6 +1,7 @@ package java2020spring; import java.awt.*; +import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -12,7 +13,17 @@ import javax.swing.border.EmptyBorder; public class CalculatorFrame extends JFrame implements ActionListener{ //定义一些需要的变量 JTextField textResult=new JTextField(); - JLabel labelSave=new JLabel("1234567891011121314"); + JLabel labelSave=new JLabel(); + JButton b_bf=new JButton("%");JButton b_fs=new JButton("1/X");JButton b_gh=new JButton("√");JButton b_pf=new JButton("X^2"); + JButton b_ql=new JButton("C");JButton b_kh=new JButton("( )");JButton b_tg=new JButton("←");JButton b_divide=new JButton("÷"); + JButton b_7=new JButton("7");JButton b_8=new JButton("8");JButton b_9=new JButton("9");JButton b_multiply=new JButton("×"); + JButton b_4=new JButton("4");JButton b_5=new JButton("5");JButton b_6=new JButton("6");JButton b_minus=new JButton("-"); + JButton b_1=new JButton("1");JButton b_2=new JButton("2");JButton b_3=new JButton("3");JButton b_plus=new JButton("+"); + JButton b_0=new JButton("0");JButton b_dot=new JButton(".");JButton b_dy=new JButton("="); + JButton b_bc=new JButton("保存");JButton b_qc=new JButton("清除"); + String Result="",Save=""; + double result; + double i; public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置一个存数Label和一个输入TextField @@ -26,58 +37,81 @@ public class CalculatorFrame extends JFrame implements ActionListener{ labelSave.setFont(new Font("微软黑体",Font.PLAIN, 25)); this.add(labelSave); //编写三个不同的按钮方法并添加按钮到frame中 - aB1("C",15,110,65,65); - aB1("( )",83,110,65,65); - aB1("←",150,110,65,65); - aB1("÷",217,110,65,65); - aB2("7",15,178,65,65); - aB2("8",83,178,65,65); - aB2("9",150,178,65,65); - aB1("×",217,178,65,65); - aB2("4",15,246,65,65); - aB2("5",83,246,65,65); - aB2("6",150,246,65,65); - aB1("-",217,246,65,65); - aB2("1",15,314,65,65); - aB2("2",83,314,65,65); - aB2("3",150,314,65,65); - aB1("+",217,314,65,65); - aB2("保存",15,382,65,65); - aB2("清除",83,382,65,65); - aB2("0",150,382,65,65); - aB3("=",217,382,65,65); + //第一行 + aB1(b_bf,15,110,65,65); + aB1(b_fs,83,110,65,65); + aB1(b_gh,150,110,65,65); + aB1(b_pf,217,110,65,65); + //第二行 + aB2(b_ql,15,178,65,65); + aB2(b_kh,83,178,65,65); + aB2(b_tg,150,178,65,65); + aB1(b_divide,217,178,65,65); + //第三行 + aB2(b_7,15,246,65,65); + aB2(b_8,83,246,65,65); + aB2(b_9,150,246,65,65); + aB1(b_multiply,217,246,65,65); + //第四行 + aB2(b_4,15,314,65,65); + aB2(b_5,83,314,65,65); + aB2(b_6,150,314,65,65); + aB1(b_minus,217,314,65,65); + //第五行 + aB2(b_1,15,382,65,65); + aB2(b_2,83,382,65,65); + aB2(b_3,150,382,65,65); + aB1(b_plus,217,382,65,65); + //第六行 + aB2(b_0,15,450,133,65); + aB2(b_dot,150,450,65,65); + aB3(b_dy,217,450,65,65); + //第七行 + aB1(b_qc,15,518,133,35); + aB1(b_bc,150,518,132,35); } - public void aB1(String string,int a,int b,int c,int d) { - JButton B1=new JButton(string); - B1.setBounds(a, b, c, d); - B1.setFont(new Font("微软雅黑",Font.BOLD,15)); - B1.setBackground(new Color(96,86,83)); - B1.setForeground(new Color(247,154,51)); - add(B1); - B1.addMouseListener(new MouseAdapter() { - public void mouseClicked(MouseEvent e) { - if() - } + public void aB1(JButton button,int a,int b,int c,int d) { + button.setBounds(a, b, c, d); + button.setFont(new Font("微软雅黑",Font.BOLD,15)); + button.setBackground(new Color(96,86,83)); + button.setForeground(new Color(247,154,51)); + add(button); + button.addActionListener(this); } - ); + public void aB2(JButton button,int a,int b,int c,int d) { + button.setBounds(a, b, c, d); + button.setFont(new Font("微软雅黑",Font.BOLD,15)); + button.setBackground(new Color(96,86,83)); + button.setForeground(Color.WHITE); + add(button); + button.addActionListener(this); } - public void aB2(String string,int a,int b,int c,int d) { - JButton B2=new JButton(string); - B2.setBounds(a, b, c, d); - B2.setFont(new Font("微软雅黑",Font.BOLD,15)); - B2.setBackground(new Color(96,86,83)); - B2.setForeground(Color.WHITE); - add(B2); + public void aB3(JButton button,int a,int b,int c,int d) { + button.setBounds(a, b, c, d); + button.setFont(new Font("微软雅黑",Font.BOLD,15)); + button.setBackground(new Color(247,154,51)); + button.setForeground(Color.WHITE); + add(button); + button.addActionListener(this); } - public void aB3(String string,int a,int b,int c,int d) { - JButton B3=new JButton(string); - B3.setBounds(a, b, c, d); - B3.setFont(new Font("微软雅黑",Font.BOLD,15)); - B3.setBackground(new Color(247,154,51)); - B3.setForeground(Color.WHITE); - add(B3); + public void actionPerformed(ActionEvent e) { + String action=e.getActionCommand(); + if(e.getSource()==b_bf) { + + } + if(e.getSource()==b_fs) { + i=Double.parseDouble(Result); + result=1/i; + Result=""+result; + textResult.setText(Result); + textResult.setVisible(true); + } + if(e.getSource()==b_7) { + Result+=7; + textResult.setText(Result); + } } - } + diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index f8023f1..f7c5f58 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -5,7 +5,7 @@ public class MainClass { CalculatorFrame frame=new CalculatorFrame(); frame.setTitle("计算器 By CZJ"); frame.setVisible(true); - frame.setBounds(500,100,311,500); + frame.setBounds(500,100,311,610); frame.setResizable(false); } } -- Gitee From f783610f4b1dceacf07e39a5c08f9eefdc0e01ed Mon Sep 17 00:00:00 2001 From: amdin Date: Thu, 4 Jun 2020 15:05:27 +0800 Subject: [PATCH 09/14] =?UTF-8?q?=E7=AC=AC=E5=9B=9B=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E7=9B=91=E5=90=AC=E5=99=A8=EF=BC=89=E5=8F=A6?= =?UTF-8?q?=EF=BC=9A=E7=A8=8B=E5=BA=8F=E5=A4=A7=E6=94=B9=EF=BC=8C=E7=94=B1?= =?UTF-8?q?=E4=BA=8E=E7=AC=AC=E4=B8=89=E6=AC=A1=E6=8F=90=E4=BA=A4=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E9=9A=BE=E4=BB=A5=E5=AE=9E=E7=8E=B0=E7=9B=91=E5=90=AC?= =?UTF-8?q?=E5=99=A8=E5=92=8C=E4=BA=8B=E4=BB=B6=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 16 ++++++++++++++++ src/java2020spring/MainClass.java | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index c22da65..3dc0ad8 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -110,6 +110,22 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result+=7; textResult.setText(Result); } + if(e.getSource()==b_8) { + Result+=8; + textResult.setText(Result); + } + if(e.getSource()==b_9) { + Result+=9; + textResult.setText(Result); + } + if(e.getSource()==b_7) { + Result+=7; + textResult.setText(Result); + } + if(e.getSource()==b_7) { + Result+=7; + textResult.setText(Result); + } } } diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java index f7c5f58..e3de222 100644 --- a/src/java2020spring/MainClass.java +++ b/src/java2020spring/MainClass.java @@ -5,7 +5,7 @@ public class MainClass { CalculatorFrame frame=new CalculatorFrame(); frame.setTitle("计算器 By CZJ"); frame.setVisible(true); - frame.setBounds(500,100,311,610); + frame.setBounds(500,100,311,620); frame.setResizable(false); } } -- Gitee From 0d07c2c7d233b6510f79a74a0c1b6e5440e86537 Mon Sep 17 00:00:00 2001 From: amdin Date: Wed, 10 Jun 2020 18:58:39 +0800 Subject: [PATCH 10/14] =?UTF-8?q?=E7=AC=AC=E4=BA=94=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=AE=8C=E6=88=90=E4=B8=80=E4=BA=9B=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E7=9A=84=E7=9B=91=E5=90=AC=E5=99=A8=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 101 +++++++++++++++++++++--- src/java2020spring/Methods.java | 5 -- 2 files changed, 92 insertions(+), 14 deletions(-) delete mode 100644 src/java2020spring/Methods.java diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 3dc0ad8..7f389ca 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -11,7 +11,7 @@ import javax.swing.*; import javax.swing.border.EmptyBorder; public class CalculatorFrame extends JFrame implements ActionListener{ - //定义一些需要的变量 + /*定义一些需要的变量*/ JTextField textResult=new JTextField(); JLabel labelSave=new JLabel(); JButton b_bf=new JButton("%");JButton b_fs=new JButton("1/X");JButton b_gh=new JButton("√");JButton b_pf=new JButton("X^2"); @@ -24,9 +24,10 @@ public class CalculatorFrame extends JFrame implements ActionListener{ String Result="",Save=""; double result; double i; + boolean kuohao=true; public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - //设置一个存数Label和一个输入TextField + /*设置一个存数Label和一个输入TextField*/ textResult.setBounds(15,15,268,55); textResult.setFont(new Font("微软黑体",Font.PLAIN, 25)); textResult.setHorizontalAlignment(SwingConstants.RIGHT); @@ -36,7 +37,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ setLayout(null); labelSave.setFont(new Font("微软黑体",Font.PLAIN, 25)); this.add(labelSave); - //编写三个不同的按钮方法并添加按钮到frame中 + /*编写三个不同的按钮方法并添加按钮到frame中*/ //第一行 aB1(b_bf,15,110,65,65); aB1(b_fs,83,110,65,65); @@ -94,18 +95,55 @@ public class CalculatorFrame extends JFrame implements ActionListener{ add(button); button.addActionListener(this); } + /*设置监听器*/ public void actionPerformed(ActionEvent e) { String action=e.getActionCommand(); + //第一行 if(e.getSource()==b_bf) { - + Result+="%"; + textResult.setText(Result); } if(e.getSource()==b_fs) { i=Double.parseDouble(Result); result=1/i; Result=""+result; textResult.setText(Result); - textResult.setVisible(true); } + if(e.getSource()==b_gh) { + i=Double.parseDouble(Result); + result=Math.sqrt(i); + Result=""+result; + textResult.setText(Result); + } + if(e.getSource()==b_pf) { + i=Double.parseDouble(Result); + result=i*i; + Result=""+result; + textResult.setText(Result); + } + //第二行 + if(e.getSource()==b_ql) { + + } + if(e.getSource()==b_kh) { + if(kuohao) { + Result+="("; + textResult.setText(Result); + kuohao=false; + } + else { + Result+=")"; + textResult.setText(Result); + kuohao=true; + } + } + if(e.getSource()==b_tg) { + + } + if(e.getSource()==b_divide) { + + } + //第三行 if(e.getSource()==b_7) { Result+=7; textResult.setText(Result); @@ -118,14 +156,59 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result+=9; textResult.setText(Result); } - if(e.getSource()==b_7) { - Result+=7; + if(e.getSource()==b_multiply) { + + } + //第四行 + if(e.getSource()==b_4) { + Result+=4; textResult.setText(Result); } - if(e.getSource()==b_7) { - Result+=7; + if(e.getSource()==b_5) { + Result+=5; textResult.setText(Result); } + if(e.getSource()==b_6) { + Result+=6; + textResult.setText(Result); + } + if(e.getSource()==b_minus) { + + } + //第五行 + if(e.getSource()==b_1) { + Result+=1; + textResult.setText(Result); + } + if(e.getSource()==b_2) { + Result+=2; + textResult.setText(Result); + } + if(e.getSource()==b_3) { + Result+=3; + textResult.setText(Result); + } + if(e.getSource()==b_plus) { + + } + //第六行 + if(e.getSource()==b_0) { + Result+=0; + textResult.setText(Result); + } + if(e.getSource()==b_dot) { + + } + if(e.getSource()==b_dy) { + + } + //第七行 + if(e.getSource()==b_bc) { + + } + if(e.getSource()==b_qc) { + + } } } diff --git a/src/java2020spring/Methods.java b/src/java2020spring/Methods.java deleted file mode 100644 index 8afd9ff..0000000 --- a/src/java2020spring/Methods.java +++ /dev/null @@ -1,5 +0,0 @@ -package java2020spring; - -public class Methods{ - -} -- Gitee From 6b452f99c25b8219618653ee986d4dabf4833473 Mon Sep 17 00:00:00 2001 From: amdin Date: Mon, 15 Jun 2020 19:02:08 +0800 Subject: [PATCH 11/14] =?UTF-8?q?=E7=AC=AC=E5=85=AD=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E8=BF=90=E7=AE=97=E6=B3=95=E5=88=99=E6=9C=AA?= =?UTF-8?q?=E5=AE=8C=E6=88=90=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 73 ++++++++++++++++++++----- 1 file changed, 59 insertions(+), 14 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index 7f389ca..fff3cde 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -24,6 +24,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ String Result="",Save=""; double result; double i; + char symbol=0; boolean kuohao=true; public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); @@ -123,7 +124,10 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } //第二行 if(e.getSource()==b_ql) { - + Result=""; + result=0; + symbol=0; + textResult.setText(Result); } if(e.getSource()==b_kh) { if(kuohao) { @@ -138,10 +142,13 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } } if(e.getSource()==b_tg) { - + textResult.setText(textResult.getText().substring(0,textResult.getText().length()-1)); } - if(e.getSource()==b_divide) { - + while(e.getSource()==b_divide) { + Result+="÷"; + textResult.setText(Result); + symbol=1; + break; } //第三行 if(e.getSource()==b_7) { @@ -156,8 +163,11 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result+=9; textResult.setText(Result); } - if(e.getSource()==b_multiply) { - + while(e.getSource()==b_multiply) { + Result+="×"; + textResult.setText(Result); + symbol=2; + break; } //第四行 if(e.getSource()==b_4) { @@ -172,8 +182,11 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result+=6; textResult.setText(Result); } - if(e.getSource()==b_minus) { - + while(e.getSource()==b_minus) { + Result+="-"; + textResult.setText(Result); + symbol=3; + break; } //第五行 if(e.getSource()==b_1) { @@ -188,8 +201,11 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result+=3; textResult.setText(Result); } - if(e.getSource()==b_plus) { - + while(e.getSource()==b_plus) { + Result+="+"; + textResult.setText(Result); + symbol=4; + break; } //第六行 if(e.getSource()==b_0) { @@ -197,17 +213,46 @@ public class CalculatorFrame extends JFrame implements ActionListener{ textResult.setText(Result); } if(e.getSource()==b_dot) { - + Result+="."; + textResult.setText(Result); } if(e.getSource()==b_dy) { - + char[] n=(textResult.getText()).toCharArray(); + for(int p=0;p Date: Tue, 16 Jun 2020 10:21:03 +0800 Subject: [PATCH 12/14] =?UTF-8?q?=E7=AC=AC=E4=B8=83=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=9F=BA=E6=9C=AC=E5=AE=8C=E6=88=90=E8=BF=90?= =?UTF-8?q?=E7=AE=97=E6=B3=95=E5=88=99=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 137 +++++++++++++++++------- 1 file changed, 96 insertions(+), 41 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index fff3cde..d930e9e 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -21,7 +21,8 @@ public class CalculatorFrame extends JFrame implements ActionListener{ JButton b_1=new JButton("1");JButton b_2=new JButton("2");JButton b_3=new JButton("3");JButton b_plus=new JButton("+"); JButton b_0=new JButton("0");JButton b_dot=new JButton(".");JButton b_dy=new JButton("="); JButton b_bc=new JButton("保存");JButton b_qc=new JButton("清除"); - String Result="",Save=""; + String n1="",n2="",Result="",Save=""; + String regex = "[0-9]*"; double result; double i; char symbol=0; @@ -98,7 +99,6 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } /*设置监听器*/ public void actionPerformed(ActionEvent e) { - String action=e.getActionCommand(); //第一行 if(e.getSource()==b_bf) { Result+="%"; @@ -142,74 +142,141 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } } if(e.getSource()==b_tg) { - textResult.setText(textResult.getText().substring(0,textResult.getText().length()-1)); + if(textResult.getText().length()>0) { + textResult.setText(textResult.getText().substring(0,textResult.getText().length()-1)); + if(textResult.getText().length()==0) { + Result=""; + result=0; + symbol=0; + } + } } while(e.getSource()==b_divide) { - Result+="÷"; + Result="÷"; + if(!textResult.getText().equals(Result)) { + n1=textResult.getText(); + } textResult.setText(Result); symbol=1; break; } //第三行 if(e.getSource()==b_7) { - Result+=7; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=7; + } + else { + Result="7"; + } textResult.setText(Result); } if(e.getSource()==b_8) { - Result+=8; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=8; + } + else { + Result="8"; + } textResult.setText(Result); } if(e.getSource()==b_9) { - Result+=9; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=9; + } + else { + Result="9"; + } textResult.setText(Result); } while(e.getSource()==b_multiply) { - Result+="×"; + Result="×"; + if(!textResult.getText().equals(Result)) { + n1=textResult.getText(); + } textResult.setText(Result); symbol=2; break; } //第四行 if(e.getSource()==b_4) { - Result+=4; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=4; + } + else { + Result="4"; + } textResult.setText(Result); } if(e.getSource()==b_5) { - Result+=5; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=5; + } + else { + Result="5"; + } textResult.setText(Result); } if(e.getSource()==b_6) { - Result+=6; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=6; + } + else { + Result="6"; + } textResult.setText(Result); } while(e.getSource()==b_minus) { - Result+="-"; + Result="-"; + n1=textResult.getText(); textResult.setText(Result); symbol=3; break; } //第五行 if(e.getSource()==b_1) { - Result+=1; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=1; + } + else { + Result="1"; + } textResult.setText(Result); } if(e.getSource()==b_2) { - Result+=2; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=2; + } + else { + Result="2"; + } textResult.setText(Result); } if(e.getSource()==b_3) { - Result+=3; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=3; + } + else { + Result="3"; + } textResult.setText(Result); } while(e.getSource()==b_plus) { - Result+="+"; + Result="+"; + if(!textResult.getText().equals(Result)) { + n1=textResult.getText(); + } textResult.setText(Result); symbol=4; break; } //第六行 if(e.getSource()==b_0) { - Result+=0; + if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { + Result+=0; + } + else { + Result="0"; + } textResult.setText(Result); } if(e.getSource()==b_dot) { @@ -217,30 +284,18 @@ public class CalculatorFrame extends JFrame implements ActionListener{ textResult.setText(Result); } if(e.getSource()==b_dy) { - char[] n=(textResult.getText()).toCharArray(); - for(int p=0;p Date: Tue, 16 Jun 2020 18:06:41 +0800 Subject: [PATCH 13/14] =?UTF-8?q?=E7=AC=AC=E4=B8=83=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=9F=BA=E6=9C=AC=E5=AE=8C=E6=88=90=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 85 ++++++++++++++++++------- 1 file changed, 62 insertions(+), 23 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index d930e9e..a220546 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -10,23 +10,25 @@ import java.awt.event.MouseListener; import javax.swing.*; import javax.swing.border.EmptyBorder; +import org.w3c.dom.events.EventException; + public class CalculatorFrame extends JFrame implements ActionListener{ /*定义一些需要的变量*/ JTextField textResult=new JTextField(); JLabel labelSave=new JLabel(); JButton b_bf=new JButton("%");JButton b_fs=new JButton("1/X");JButton b_gh=new JButton("√");JButton b_pf=new JButton("X^2"); - JButton b_ql=new JButton("C");JButton b_kh=new JButton("( )");JButton b_tg=new JButton("←");JButton b_divide=new JButton("÷"); + JButton b_ql=new JButton("C");JButton b_js=new JButton("介绍");/*JButton b_kh=new JButton("( )");*/JButton b_tg=new JButton("←");JButton b_divide=new JButton("÷"); JButton b_7=new JButton("7");JButton b_8=new JButton("8");JButton b_9=new JButton("9");JButton b_multiply=new JButton("×"); JButton b_4=new JButton("4");JButton b_5=new JButton("5");JButton b_6=new JButton("6");JButton b_minus=new JButton("-"); JButton b_1=new JButton("1");JButton b_2=new JButton("2");JButton b_3=new JButton("3");JButton b_plus=new JButton("+"); JButton b_0=new JButton("0");JButton b_dot=new JButton(".");JButton b_dy=new JButton("="); JButton b_bc=new JButton("保存");JButton b_qc=new JButton("清除"); String n1="",n2="",Result="",Save=""; - String regex = "[0-9]*"; + String regex = "[0-9]*",regex2="[^0-9]*"; double result; double i; char symbol=0; - boolean kuohao=true; + //boolean kuohao=true; public CalculatorFrame() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); /*设置一个存数Label和一个输入TextField*/ @@ -47,7 +49,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ aB1(b_pf,217,110,65,65); //第二行 aB2(b_ql,15,178,65,65); - aB2(b_kh,83,178,65,65); + aB2(b_js,83,178,65,65); aB2(b_tg,150,178,65,65); aB1(b_divide,217,178,65,65); //第三行 @@ -99,9 +101,11 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } /*设置监听器*/ public void actionPerformed(ActionEvent e) { + try { //第一行 if(e.getSource()==b_bf) { - Result+="%"; + i=Double.parseDouble(textResult.getText()); + Result=String.valueOf(i/100); textResult.setText(Result); } if(e.getSource()==b_fs) { @@ -127,9 +131,17 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result=""; result=0; symbol=0; + if(labelSave.getText().equals("请按C继续使用计算器")) { + Save=""; + labelSave.setText(Save); + } textResult.setText(Result); } - if(e.getSource()==b_kh) { + if(e.getSource()==b_js) { + textResult.setText("2019级信管1班陈宗杰"); + labelSave.setText("请按C继续使用计算器"); + } + /*if(e.getSource()==b_kh) { if(kuohao) { Result+="("; textResult.setText(Result); @@ -140,7 +152,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ textResult.setText(Result); kuohao=true; } - } + }*/ if(e.getSource()==b_tg) { if(textResult.getText().length()>0) { textResult.setText(textResult.getText().substring(0,textResult.getText().length()-1)); @@ -153,9 +165,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } while(e.getSource()==b_divide) { Result="÷"; - if(!textResult.getText().equals(Result)) { - n1=textResult.getText(); - } + n1=textResult.getText(); textResult.setText(Result); symbol=1; break; @@ -165,6 +175,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=7; } + else if(n1.matches(regex2)) { + Result+=7; + } else { Result="7"; } @@ -174,6 +187,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=8; } + else if(n1.matches(regex2)) { + Result+=8; + } else { Result="8"; } @@ -183,6 +199,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=9; } + else if(n1.matches(regex2)) { + Result+=9; + } else { Result="9"; } @@ -190,9 +209,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } while(e.getSource()==b_multiply) { Result="×"; - if(!textResult.getText().equals(Result)) { - n1=textResult.getText(); - } + n1=textResult.getText(); textResult.setText(Result); symbol=2; break; @@ -202,6 +219,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=4; } + else if(n1.matches(regex2)) { + Result+=4; + } else { Result="4"; } @@ -211,6 +231,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=5; } + else if(n1.matches(regex2)) { + Result+=5; + } else { Result="5"; } @@ -220,6 +243,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=6; } + else if(n1.matches(regex2)) { + Result+=6; + } else { Result="6"; } @@ -229,7 +255,6 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Result="-"; n1=textResult.getText(); textResult.setText(Result); - symbol=3; break; } //第五行 @@ -237,6 +262,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=1; } + else if(n1.matches(regex2)) { + Result+=1; + } else { Result="1"; } @@ -246,6 +274,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=2; } + else if(n1.matches(regex2)) { + Result+=2; + } else { Result="2"; } @@ -255,6 +286,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=3; } + else if(n1.matches(regex2)) { + Result+=3; + } else { Result="3"; } @@ -262,11 +296,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } while(e.getSource()==b_plus) { Result="+"; - if(!textResult.getText().equals(Result)) { - n1=textResult.getText(); - } + n1=textResult.getText(); textResult.setText(Result); - symbol=4; + symbol=3; break; } //第六行 @@ -274,6 +306,9 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=0; } + else if(n1.matches(regex2)) { + Result+=0; + } else { Result="0"; } @@ -288,15 +323,15 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if(symbol==1) { result=Double.parseDouble(n1)/Double.parseDouble(n2); } - if(symbol==2) { + else if(symbol==2) { result=Double.parseDouble(n1)*Double.parseDouble(n2); } - if(symbol==3) { - result=Double.parseDouble(n1)-Double.parseDouble(n2); - } - if(symbol==4) { + else if(symbol==3) { result=Double.parseDouble(n1)+Double.parseDouble(n2); } + else { + result=Double.parseDouble(n1)-Double.parseDouble(n2); + } Result=""+result; textResult.setText(Result); } @@ -309,6 +344,10 @@ public class CalculatorFrame extends JFrame implements ActionListener{ Save=""; labelSave.setText(Save); } + } + catch(Exception E1) { + textResult.setText("出错"); + } } } -- Gitee From 8a2627ee5f534db0f452c74393a441f80a71126e Mon Sep 17 00:00:00 2001 From: amdin Date: Wed, 17 Jun 2020 11:40:05 +0800 Subject: [PATCH 14/14] =?UTF-8?q?=E7=AC=AC=E4=B9=9D=E6=AC=A1=E6=8F=90?= =?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=AE=8C=E6=88=90=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2020spring/CalculatorFrame.java | 101 ++++++++++++++---------- 1 file changed, 61 insertions(+), 40 deletions(-) diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java index a220546..b791f35 100644 --- a/src/java2020spring/CalculatorFrame.java +++ b/src/java2020spring/CalculatorFrame.java @@ -3,16 +3,15 @@ package java2020spring; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.MouseAdapter; -import java.awt.event.MouseEvent; -import java.awt.event.MouseListener; +import java.math.BigDecimal; import javax.swing.*; -import javax.swing.border.EmptyBorder; - -import org.w3c.dom.events.EventException; +import javax.swing.text.AttributeSet; +import javax.swing.text.BadLocationException; +import javax.swing.text.PlainDocument; public class CalculatorFrame extends JFrame implements ActionListener{ + private static final long serialVersionUID = 1L; /*定义一些需要的变量*/ JTextField textResult=new JTextField(); JLabel labelSave=new JLabel(); @@ -25,8 +24,8 @@ public class CalculatorFrame extends JFrame implements ActionListener{ JButton b_bc=new JButton("保存");JButton b_qc=new JButton("清除"); String n1="",n2="",Result="",Save=""; String regex = "[0-9]*",regex2="[^0-9]*"; - double result; - double i; + double result=0,save=0; + double i=0,times=0; char symbol=0; //boolean kuohao=true; public CalculatorFrame() { @@ -102,45 +101,46 @@ public class CalculatorFrame extends JFrame implements ActionListener{ /*设置监听器*/ public void actionPerformed(ActionEvent e) { try { - //第一行 + /**********第一行**********/ if(e.getSource()==b_bf) { i=Double.parseDouble(textResult.getText()); Result=String.valueOf(i/100); textResult.setText(Result); - } + }//百分号 if(e.getSource()==b_fs) { i=Double.parseDouble(Result); result=1/i; Result=""+result; textResult.setText(Result); - } + }//倒数 if(e.getSource()==b_gh) { i=Double.parseDouble(Result); result=Math.sqrt(i); Result=""+result; textResult.setText(Result); - } + }//开根号 if(e.getSource()==b_pf) { i=Double.parseDouble(Result); result=i*i; Result=""+result; textResult.setText(Result); - } - //第二行 + }//平方 + /**********第二行**********/ if(e.getSource()==b_ql) { Result=""; result=0; symbol=0; + times=0; if(labelSave.getText().equals("请按C继续使用计算器")) { Save=""; labelSave.setText(Save); } textResult.setText(Result); - } + }//清零 if(e.getSource()==b_js) { textResult.setText("2019级信管1班陈宗杰"); labelSave.setText("请按C继续使用计算器"); - } + }//介绍 /*if(e.getSource()==b_kh) { if(kuohao) { Result+="("; @@ -152,7 +152,7 @@ public class CalculatorFrame extends JFrame implements ActionListener{ textResult.setText(Result); kuohao=true; } - }*/ + }*///括号 if(e.getSource()==b_tg) { if(textResult.getText().length()>0) { textResult.setText(textResult.getText().substring(0,textResult.getText().length()-1)); @@ -162,15 +162,15 @@ public class CalculatorFrame extends JFrame implements ActionListener{ symbol=0; } } - } - while(e.getSource()==b_divide) { + }//退格 + if(e.getSource()==b_divide) { Result="÷"; n1=textResult.getText(); textResult.setText(Result); symbol=1; - break; - } - //第三行 + times+=1; + }//除号 + /**********第三行**********/ if(e.getSource()==b_7) { if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=7; @@ -207,14 +207,14 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } textResult.setText(Result); } - while(e.getSource()==b_multiply) { + if(e.getSource()==b_multiply) { Result="×"; n1=textResult.getText(); textResult.setText(Result); symbol=2; - break; - } - //第四行 + times+=1; + }//乘号 + /**********第四行**********/ if(e.getSource()==b_4) { if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=4; @@ -251,13 +251,13 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } textResult.setText(Result); } - while(e.getSource()==b_minus) { + if(e.getSource()==b_minus) { Result="-"; n1=textResult.getText(); textResult.setText(Result); - break; - } - //第五行 + times+=1; + }//减号 + /**********第五行**********/ if(e.getSource()==b_1) { if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=1; @@ -294,14 +294,14 @@ public class CalculatorFrame extends JFrame implements ActionListener{ } textResult.setText(Result); } - while(e.getSource()==b_plus) { + if(e.getSource()==b_plus) { Result="+"; n1=textResult.getText(); textResult.setText(Result); symbol=3; - break; - } - //第六行 + times+=1; + }//加号 + /**********第六行**********/ if(e.getSource()==b_0) { if (textResult.getText().matches(regex)||textResult.getText().contains(".")) { Result+=0; @@ -317,9 +317,25 @@ public class CalculatorFrame extends JFrame implements ActionListener{ if(e.getSource()==b_dot) { Result+="."; textResult.setText(Result); - } + }//小数点 if(e.getSource()==b_dy) { n2=textResult.getText(); + if(times!=1) { + if(symbol==1) { + textResult.setText("我还不会连续除(:qゝ∠)"); + } + else if(symbol==2) { + textResult.setText("我还不会连续乘(:qゝ∠)"); + } + else if(symbol==3) { + textResult.setText("我还不会连续加(:qゝ∠)"); + } + else { + textResult.setText("我还不会连续减(:qゝ∠)"); + } + labelSave.setText("请按C继续使用计算器"); + } + else { if(symbol==1) { result=Double.parseDouble(n1)/Double.parseDouble(n2); } @@ -333,17 +349,22 @@ public class CalculatorFrame extends JFrame implements ActionListener{ result=Double.parseDouble(n1)-Double.parseDouble(n2); } Result=""+result; - textResult.setText(Result); - } - //第七行 + BigDecimal db = new BigDecimal(Result); + textResult.setText(db.toPlainString()); + } + }//等于 + /*if(e.getSource()==b_dy&×!=1) { + + }*/ + /**********第七行**********/ if(e.getSource()==b_bc) { Save=Save+" "+textResult.getText(); labelSave.setText(""+Save); - } + }//保存 if(e.getSource()==b_qc) { Save=""; labelSave.setText(Save); - } + }//清除 } catch(Exception E1) { textResult.setText("出错"); -- Gitee