diff --git "a/java\344\273\243\347\240\201/.keep" "b/java\344\273\243\347\240\201/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/java\344\273\243\347\240\201/CalculatorFrame.java" "b/java\344\273\243\347\240\201/CalculatorFrame.java" new file mode 100644 index 0000000000000000000000000000000000000000..d585ddffdf05846c9373f7690cb99483c148adfe --- /dev/null +++ "b/java\344\273\243\347\240\201/CalculatorFrame.java" @@ -0,0 +1,255 @@ +package java2020spring; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +public class CalculatorFrame extends JFrame implements ActionListener { + JButton buttonName[]=new JButton[30]; + String name[]= {"sin","cos","tan","归零","←","%","X²","√","1/X","÷", + "X³","7","8","9","×","2ⁿ","4","5","6","-", + "lg","1","2","3","+","ln","±","0",".","="}; + JTextField resultText; + String str; + String valuas; + String s; + String labe; + double result; + JPanel panel; + JButton button; + JTextField text; + GridBagConstraints contains; + public CalculatorFrame () { + labe=""; + result=0; + str=""; + valuas="0"; + s="+"; + panel=new JPanel(); + + panel.setLayout(new GridBagLayout()); + + contains=new GridBagConstraints(); + text=new JTextField(); + text.setHorizontalAlignment(JTextField.RIGHT); + text.setEditable(false); + text.setBackground(Color.WHITE); + JPanel pCenter=new JPanel(); + pCenter.setLayout(new GridLayout(6,5)); + for(int i=0;i<30;i++) { + buttonName[i]=new JButton(name[i]); + pCenter.add(buttonName[i]); + buttonName[i].addActionListener(this); + } + JPanel pNorth=new JPanel(); + pNorth.setLayout(new BorderLayout()); + pNorth.add(text); + add(pCenter,BorderLayout.CENTER); + add(pNorth,BorderLayout.NORTH); + } + public void handleOperator() { + if(s=="sin") { + result=Math.sin(Double.parseDouble(valuas)); + } + else if(s=="cos") { + result=Math.cos(Double.parseDouble(valuas)); + } + else if(s=="tan") { + result=Math.tan(Double.parseDouble(valuas)); + } + else if(s=="%") { + result=result/100; + } + else if(s=="X²") { + result=Math.pow(Double.parseDouble(valuas),2); + } + else if(s=="√") { + result=Math.sqrt(Double.parseDouble(valuas)); + } + else if(s=="1/X") { + result=(1/Double.parseDouble(valuas)); + } + else if(s=="÷") { + result=result/Double.parseDouble(valuas); + } + else if(s=="X³") { + result=Math.pow(Double.parseDouble(valuas),3); + } + else if(s=="×") { + result=result*Double.parseDouble(valuas); + } + else if(s=="2ⁿ") { + result=Math.pow(2,Double.parseDouble(valuas)); + } + else if(s=="-") { + result=result-Double.parseDouble(valuas); + } + else if(s=="lg") { + result=Math.log10(Double.parseDouble(valuas)); + } + else if(s=="+") { + result=result+Double.parseDouble(valuas); + } + else if(s=="ln") { + result=Math.log(Double.parseDouble(valuas)); + } + else if(s=="±") { + result = Double.parseDouble(valuas) * (-1); + } + valuas="0"; + } + public void actionPerformed(ActionEvent e) { + JButton btn1= (JButton) e.getSource(); + if (btn1.getText() == "="){ + handleOperator(); + str = String.valueOf(result); + text.setText(str); + s="+"; + } + else if(btn1.getText()=="sin") { + str=text.getText(); + str="sin"+str; + text.setText(str); + handleOperator(); + s="sin"; + } + else if(btn1.getText()=="cos") { + str=text.getText(); + str="cos"+str; + text.setText(str); + handleOperator(); + s="cos"; + } + else if(btn1.getText()=="tan") { + str=text.getText(); + str="tan"+str; + text.setText(str); + handleOperator(); + s="tan"; + } + else if(btn1.getText()=="lg") { + str=text.getText(); + str="lg"+str; + text.setText(str); + handleOperator(); + s="lg"; + } + else if(btn1.getText()=="ln") { + str=text.getText(); + str="ln"+str; + text.setText(str); + handleOperator(); + s="ln"; + } + else if(btn1.getText()=="±") { + str=text.getText(); + str="-"+str; + text.setText(str); + handleOperator(); + s="±"; + } + else if (btn1.getText() == "X³") { + str=text.getText(); + str=str+"³"; + text.setText(str); + handleOperator(); + s="X³"; + } + else if (btn1.getText() == "2ⁿ") { + String n=text.getText(); + str="2"+"ⁿ"; + text.setText(str); + handleOperator(); + s="2ⁿ"; + } + else if (btn1.getText() == "1/X") { + str=text.getText(); + str=str+"1/"; + text.setText(str); + handleOperator(); + s="1/X"; + } + else if (btn1.getText() == "←") { + str=text.getText(); + if(str.length()!=0) { + if(valuas.length()>=1&&str.length()>=1&&str.charAt(str.length()-1)<='9' + &&str.charAt(str.length()-1)>='0') { + valuas=valuas.substring(0,valuas.length()-1); + } + else { + s="+"; + } + if(str.length()>1&&str.substring(str.length()-2,str.length()).equals("1/")) { + str=str.substring(0,str.length()-2); + } + else { + str=str.substring(0,str.length()-1); + } + } + text.setText(str); + } + else if (btn1.getText() == "归零") + { + text.setText(""); + valuas="0"; + result=0; + s="+"; + labe=""; + label.setText(""+"历史记录" +labe+""); + } + else if (btn1.getText() == "+") + { + str=text.getText(); + str=str+"+"; + text.setText(str); + handleOperator(); + s = "+"; + } + else if (btn1.getText() == "-") + { + str=text.getText(); + str=str+"-"; + text.setText(str); + handleOperator(); + s = "-"; + } + else if (btn1.getText() == "/") + { + str=text.getText(); + str=str+"/"; + text.setText(str); + handleOperator(); + s = "/"; + } + else if (btn1.getText() == "*") + { + str=text.getText(); + str=str+"*"; + text.setText(str); + handleOperator(); + s = "*"; + } + else if (btn1.getText() == "%") + { + str=text.getText(); + str=str+"%"; + text.setText(str); + handleOperator(); + s = "%"; + } + else if (btn1.getText() == "√") + { + str=text.getText(); + str=str+"√"; + text.setText(str); + handleOperator(); + s = "√"; + } + else + { + str=text.getText(); + str=str+btn1.getText(); + valuas=valuas+btn1.getText(); + text.setText(str); + } + System.out.println(result); + } +} diff --git "a/java\344\273\243\347\240\201/JMenuListener.java" "b/java\344\273\243\347\240\201/JMenuListener.java" new file mode 100644 index 0000000000000000000000000000000000000000..2aa5c4a61b98eb00c801d07a6f9c077ba133a379 --- /dev/null +++ "b/java\344\273\243\347\240\201/JMenuListener.java" @@ -0,0 +1,95 @@ +package java2020spring; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +public class JMenuListener implements ActionListener { + public void actionPerformed(ActionEvent e) { + JLabel label; + JTextField showText; + JMenuItem mnit =(JMenuItem)e.getSource(); + if(mnit.getText()=="历史记录") + { + showText=CalculatorFrame.resultText; + JDialog dialog=new JDialog(); + dialog.setTitle("历史记录"); + dialog.add(showText); + dialog.setBounds(200,200,400,200 ); + dialog.setVisible(true); + } + else if(mnit.getText()=="转换功能") + { + label=new JLabel(" 该功能尚未开发!"); + JDialog dialog=new JDialog(); + dialog.setTitle("转换功能"); + dialog.setBounds(300,300,100,100); + dialog.add(label); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mnit.getText()=="其他") + { + JLabel label1,label2,label3; + label1=new JLabel(" 计算器保留隐私声明权利,请勿泄露数据!"); + label2=new JLabel(" 可发送反馈参与了解计算功能的设定及修改!"); + label3=new JLabel(" 反馈邮箱地址:281867270@qq.com"); + JDialog dialog=new JDialog(); + dialog.setTitle("其他"); + dialog.setLayout(new GridLayout(3,1,10,10)); + dialog.setBounds(200,200,400,200); + dialog.add(label1); + dialog.add(label2); + dialog.add(label3); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mnit.getText()=="计算器信息") + { + label=new JLabel(" 这是一款用于实现简易数学运算的数学计算器"); + JDialog dialog=new JDialog(); + dialog.setTitle("计算器信息"); + dialog.setBounds(200,200,300,200); + dialog.add(label); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mnit.getText()=="符号解释") + { + JLabel label1,label2,label3,label4,label5, + label6,label7,label8,label9,label10, + label11,label12,label13,label14,label15, + label16,label17,label18,label19,label20; + label1=new JLabel(" sin:进行正弦函数运算;"); + label2=new JLabel(" cos:进行余弦函数运算;"); + label3=new JLabel(" tan:进行正切函数运算;"); + label4=new JLabel(" “归零”:清零所有数字;"); + label5=new JLabel(" “←”:减去一个字符;"); + label6=new JLabel(" %:进行百分比转换;"); + label7=new JLabel(" +:进行加法运算;"); + label8=new JLabel(" -:进行减法运算;"); + label9=new JLabel(" ×:进行乘法运算;"); + label10=new JLabel(" ÷:进行除法运算;"); + label11=new JLabel(" X²:进行平方运算;"); + label12=new JLabel(" X³进行3次方运算;"); + label13=new JLabel(" 2ⁿ:进行2的n次方得运算;"); + label14=new JLabel(" √:进行求根运算;"); + label15=new JLabel(" 1/X:进行倒数运算;"); + label16=new JLabel(" lg:进行以10为底的对数函数的运算;"); + label17=new JLabel(" √:进行求根运算;"); + label18=new JLabel(" ln:进行以e为底的函数运算;"); + label19=new JLabel(" ±进行求负数运算;"); + label20=new JLabel(" =:进行等号运算;"); + JDialog dialog=new JDialog(); + dialog.setTitle("符号解释"); + dialog.setBounds(200,200,400,500); + dialog.setLayout(new GridLayout(20,1,3,3)); + dialog.add(label1);dialog.add(label2);dialog.add(label3);dialog.add(label4); + dialog.add(label5);dialog.add(label6);dialog.add(label7);dialog.add(label8); + dialog.add(label9);dialog.add(label10);dialog.add(label11);dialog.add(label12); + dialog.add(label13);dialog.add(label14);dialog.add(label15);dialog.add(label16); + dialog.add(label17);dialog.add(label18);dialog.add(label19);dialog.add(label20); + dialog.setVisible(true); + dialog.setResizable(false); + } + } +} + diff --git "a/java\344\273\243\347\240\201/MainClass.java" "b/java\344\273\243\347\240\201/MainClass.java" new file mode 100644 index 0000000000000000000000000000000000000000..47da1813833c48ee388457fa74beb06b5b75acb1 --- /dev/null +++ "b/java\344\273\243\347\240\201/MainClass.java" @@ -0,0 +1,14 @@ +package jisuanqi; +import java.awt.Color; +import javax.swing.JFrame; +public class MainClass { + public static void main(String args[]) { + CalculatorFrame frame=new CalculatorFrame(); + frame.setTitle("ѧ"); + frame.setBounds(200,200,500,500); + frame.setVisible(true); + frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + frame.setResizable(true); + frame.setBackground(Color.LIGHT_GRAY); + } +} diff --git a/src/java2020spring/CalculatorFrame.java b/src/java2020spring/CalculatorFrame.java new file mode 100644 index 0000000000000000000000000000000000000000..2a198494936e7420a8df8110727dee46eff032c7 --- /dev/null +++ b/src/java2020spring/CalculatorFrame.java @@ -0,0 +1,320 @@ +package java2020spring; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +public class CalculatorFrame extends JFrame implements ActionListener { + JButton buttonName[]=new JButton[30]; + String name[]= {"sin","cos","tan","归零","←","%","X²","√","1/X","÷", + "X³","7","8","9","×","2ⁿ","4","5","6","-", + "lg","1","2","3","+","ln","±","0",".","="};//对按钮进行命名 + static JTextField resultText;//resultText是历史记录框 + JTextField text;//text是计算框 + String str; + String valuas; + String sign; + String labe; + double result; + ActionListener listener1;//listener1是监视器 + JMenuBar menubar; + JMenu menu1; + JMenu menu2; + JMenu menu3; + JMenuItem menuitem1; + JMenuItem menuitem2; + JMenuItem menuitem3; + JMenuItem menuitem4; + JMenuItem menuitem5;//声明菜单条、菜单和菜单项 + JPanel panel; + JButton button; + public CalculatorFrame () { + labe=""; + result=0; + str=""; + valuas="0"; + sign="+"; + menubar=new JMenuBar(); + listener1=new JMenuListener();//创建监视器 + this.setJMenuBar(menubar); + menu1=new JMenu("查看(V)"); + menu2=new JMenu("编辑(E)"); + menu3=new JMenu("关于(A)"); + menuitem1=new JMenuItem("历史记录"); + menuitem2=new JMenuItem("符号解释"); + menuitem3=new JMenuItem("转换功能"); + menuitem4=new JMenuItem("计算器信息"); + menuitem5=new JMenuItem("其他");//菜单和菜单项创建及命名 + menuitem1.addActionListener(listener1); + menuitem2.addActionListener(listener1); + menuitem3.addActionListener(listener1); + menuitem4.addActionListener(listener1); + menuitem5.addActionListener(listener1);//将listener1设置为几个菜单项的监听器 + menu1.add(menuitem1); + menu2.add(menuitem2); + menu2.add(menuitem3); + menu3.add(menuitem5); + menu3.add(menuitem4); + menubar.add(menu1); + menubar.add(menu2); + menubar.add(menu3); + resultText=new JTextField();//创建记录文本框 + text=new JTextField(); + text.setHorizontalAlignment(JTextField.RIGHT);//设置文本框文本为右对齐; + text.setEditable(false);//不允许修改文本框内容 + text.setBackground(Color.WHITE);//设置文本框背景为白色 + JPanel pCenter=new JPanel(); + pCenter.setLayout(new GridLayout(6,5));//创建一个6行5列的网格 + for(int i=0;i<30;i++) { + buttonName[i]=new JButton(name[i]); + pCenter.add(buttonName[i]); + buttonName[i].addActionListener(this); + }//将按钮依次放入网格 + buttonName[0].setForeground(Color.blue);buttonName[1].setForeground(Color.blue); + buttonName[2].setForeground(Color.blue);buttonName[3].setForeground(Color.red); + buttonName[4].setForeground(Color.red);buttonName[5].setForeground(Color.blue); + buttonName[6].setForeground(Color.blue);buttonName[7].setForeground(Color.blue); + buttonName[8].setForeground(Color.blue);buttonName[9].setForeground(Color.blue); + buttonName[10].setForeground(Color.blue);buttonName[14].setForeground(Color.blue); + buttonName[15].setForeground(Color.blue);buttonName[19].setForeground(Color.blue); + buttonName[20].setForeground(Color.blue);buttonName[24].setForeground(Color.blue); + buttonName[25].setForeground(Color.blue);buttonName[29].setForeground(Color.blue); + //对运算符号进行颜色标记,使数字和颜色区分明显 + JPanel pNorth=new JPanel(); + pNorth.setLayout(new BorderLayout()); + pNorth.setSize(300,300); + pNorth.add(text); + add(pCenter,BorderLayout.CENTER);//将按钮放入计算器中部 + add(pNorth,BorderLayout.NORTH);//将计算框放入计算器北部 + } + public void handleOperator() { + if(sign=="sin") { + result=Math.sin(Double.parseDouble(valuas)); + } + else if(sign=="cos") { + result=Math.cos(Double.parseDouble(valuas)); + } + else if(sign=="tan") { + result=Math.tan(Double.parseDouble(valuas)); + } + else if(sign=="%") { + result=result/100; + } + else if(sign=="X²") { + result=Math.pow(Double.parseDouble(valuas),2); + } + else if(sign=="√") { + result=Math.sqrt(Double.parseDouble(valuas)); + } + else if(sign=="1/X") { + result=(1/Double.parseDouble(valuas)); + } + else if(sign=="÷") { + result=result/Double.parseDouble(valuas); + } + else if(sign=="X³") { + result=Math.pow(Double.parseDouble(valuas),3); + } + else if(sign=="×") { + result=result*Double.parseDouble(valuas); + } + else if(sign=="2ⁿ") { + result=Math.pow(2,Double.parseDouble(valuas)); + } + else if(sign=="-") { + result=result-Double.parseDouble(valuas); + } + else if(sign=="lg") { + result=Math.log10(Double.parseDouble(valuas)); + } + else if(sign=="+") { + result=result+Double.parseDouble(valuas); + } + else if(sign=="ln") { + result=Math.log(Double.parseDouble(valuas)); + } + else if(sign=="±") { + result = Double.parseDouble(valuas) * (-1); + } + valuas="0"; + }//为各种运算符提供运算的方法 + public void actionPerformed(ActionEvent e) {//处理事件的方法 + JButton btn1= (JButton) e.getSource();//获取按下的按钮 + if (btn1.getText() == "="){ + handleOperator(); + str = String.valueOf(result); + text.setText(str); + sign="+"; + resultText.setText(str); + }//按下=键 + else if(btn1.getText()=="sin") { + str=text.getText(); + str="sin"+str; + text.setText(str); + handleOperator(); + sign="sin"; + resultText.setText(str); + }//按下sin键 + else if(btn1.getText()=="cos") { + str=text.getText(); + str="cos"+str; + text.setText(str); + handleOperator(); + sign="cos"; + resultText.setText(str); + }//按下cos键 + else if(btn1.getText()=="tan") { + str=text.getText(); + str="tan"+str; + text.setText(str); + handleOperator(); + sign="tan"; + resultText.setText(str); + }//按下tan键 + else if(btn1.getText()=="lg") { + str=text.getText(); + str="lg"+str; + text.setText(str); + handleOperator(); + sign="lg"; + resultText.setText(str); + }//按下lg键 + else if(btn1.getText()=="ln") { + str=text.getText(); + str="ln"+str; + text.setText(str); + handleOperator(); + sign="ln"; + resultText.setText(str); + }//按下ln键 + else if(btn1.getText()=="±") { + str=text.getText(); + str="-"+str; + text.setText(str); + handleOperator(); + sign="±"; + resultText.setText(str); + }//按下±键 + else if (btn1.getText() == "X³") { + str=text.getText(); + str=str+"³"; + text.setText(str); + handleOperator(); + sign="X³"; + resultText.setText(str); + }//按下X³键 + else if (btn1.getText() == "X²") { + str=text.getText(); + str=str+"²"; + text.setText(str); + handleOperator(); + sign="X²"; + resultText.setText(str); + }//按下X²键 + else if (btn1.getText() == "2ⁿ") { + String ⁿ=text.getText(); + str="2"+"ⁿ"; + text.setText(str); + handleOperator(); + sign="2ⁿ"; + resultText.setText(str); + }//按下2ⁿ键 + else if (btn1.getText() == "1/X") { + str=text.getText(); + str=str+"1/"; + text.setText(str); + handleOperator(); + sign="1/X"; + resultText.setText(str); + }//按下1/X键 + else if (btn1.getText() == "←") { + str=text.getText(); + if(str.length()!=0) { + if(valuas.length()>=1&&str.length()>=1&&str.charAt(str.length()-1)<='9' + &&str.charAt(str.length()-1)>='0') { + valuas=valuas.substring(0,valuas.length()-1); + } + else { + sign="+"; + } + if(str.length()>1&&str.substring(str.length()-2,str.length()).equals("1/")) { + str=str.substring(0,str.length()-2); + } + else { + str=str.substring(0,str.length()-1); + } + } + text.setText(str); + resultText.setText(str); + }//按下←键 + else if (btn1.getText() == "归零") + { + text.setText(""); + valuas="0"; + result=0; + sign="+"; + labe=""; + }//按下归零键 + else if (btn1.getText() == "+") + { + str=text.getText(); + str=str+"+"; + text.setText(str); + handleOperator(); + sign = "+"; + resultText.setText(str); + }//按下+键 + else if (btn1.getText() == "-") + { + str=text.getText(); + str=str+"-"; + text.setText(str); + handleOperator(); + sign = "-"; + resultText.setText(str); + }//按下-键 + else if (btn1.getText() == "÷") + { + str=text.getText(); + str=str+"÷"; + text.setText(str); + handleOperator(); + sign = "÷"; + resultText.setText(str); + }//按下÷键 + else if (btn1.getText() == "×") + { + str=text.getText(); + str=str+"×"; + text.setText(str); + handleOperator(); + sign = "×"; + resultText.setText(str); + }//按下×键 + else if (btn1.getText() == "%") + { + str=text.getText(); + str=str+"%"; + text.setText(str); + handleOperator(); + sign = "%"; + resultText.setText(str); + }//按下%键 + else if (btn1.getText() == "√") + { + str=text.getText(); + str=str+"√"; + text.setText(str); + handleOperator(); + sign = "√"; + resultText.setText(str); + }//按下√键 + else + { + str=text.getText(); + str=str+btn1.getText(); + valuas=valuas+btn1.getText(); + text.setText(str); + resultText.setText(str); + }//按下数字键或. + } +} + diff --git a/src/java2020spring/JMenuListener.java b/src/java2020spring/JMenuListener.java new file mode 100644 index 0000000000000000000000000000000000000000..7ad8d0c587e40ff73f29637262720aa670e32d1a --- /dev/null +++ b/src/java2020spring/JMenuListener.java @@ -0,0 +1,100 @@ +package java2020spring; +import java.awt.*; +import java.awt.event.*; +import javax.swing.*; +public class JMenuListener implements ActionListener {//负责创建监视器的类 + public void actionPerformed(ActionEvent e) { + JLabel label; + JTextField showText; + JMenuItem mark =(JMenuItem)e.getSource();//获取封装在事件中的“命令”字符串 + if(mark.getText()=="历史记录")//按下“历史记录” + { + showText=CalculatorFrame.resultText;//从CalculatorFrame类中获得历史记录框 + JDialog dialog=new JDialog(); + dialog.setTitle("历史记录"); + dialog.add(showText); + dialog.setBounds(200,200,400,200 ); + dialog.setVisible(true); + } + else if(mark.getText()=="转换功能")//按下“转换功能” + { + label=new JLabel(" 该功能尚未开发!"); + label.setForeground(Color.red); + JDialog dialog=new JDialog(); + dialog.setTitle("转换功能"); + dialog.setBounds(300,300,100,100); + dialog.add(label); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mark.getText()=="其他")//按下“其他” + { + JLabel label1,label2,label3; + label1=new JLabel(" 计算器保留隐私声明权利,请勿泄露数据!"); + label2=new JLabel(" 可发送反馈参与了解计算功能的设定及修改!"); + label3=new JLabel(" 反馈邮箱地址:281867270@qq.com"); + //用标签对用户进行相关提醒 + label3.setForeground(Color.blue); + JDialog dialog=new JDialog(); + dialog.setTitle("其他"); + dialog.setLayout(new GridLayout(3,1,10,10)); + dialog.setBounds(200,200,400,200); + dialog.add(label1); + dialog.add(label2); + dialog.add(label3); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mark.getText()=="计算器信息")//按下”计算器信息” + { + label=new JLabel(" 这是一款用于实现简易数学运算的数学计算器"); + JDialog dialog=new JDialog(); + dialog.setTitle("计算器信息"); + dialog.setBounds(200,200,300,200); + dialog.add(label); + dialog.setVisible(true); + dialog.setResizable(false); + } + else if(mark.getText()=="符号解释")//按下“符号解释” + { + JLabel label1,label2,label3,label4,label5, + label6,label7,label8,label9,label10, + label11,label12,label13,label14,label15, + label16,label17,label18,label19,label20; + label1=new JLabel(" sin:进行正弦函数运算;"); + label2=new JLabel(" cos:进行余弦函数运算;"); + label3=new JLabel(" tan:进行正切函数运算;"); + label4=new JLabel(" “归零”:清零所有数字;"); + label5=new JLabel(" “←”:减去一个字符;"); + label6=new JLabel(" %:进行百分比转换;"); + label7=new JLabel(" +:进行加法运算;"); + label8=new JLabel(" -:进行减法运算;"); + label9=new JLabel(" ×:进行乘法运算;"); + label10=new JLabel(" ÷:进行除法运算;"); + label11=new JLabel(" X²:进行平方运算;"); + label12=new JLabel(" X³进行3次方运算;"); + label13=new JLabel(" 2ⁿ:进行2的n次方得运算;"); + label14=new JLabel(" √:进行求根运算;"); + label15=new JLabel(" 1/X:进行倒数运算;"); + label16=new JLabel(" lg:进行以10为底的对数函数的运算;"); + label17=new JLabel(" √:进行求根运算;"); + label18=new JLabel(" ln:进行以e为底的函数运算;"); + label19=new JLabel(" ±进行求负数运算;"); + label20=new JLabel(" =:进行等号运算;"); + //用标签对各符号含义进行解释 + JDialog dialog=new JDialog(); + dialog.setTitle("符号解释"); + dialog.setBounds(200,200,400,500); + dialog.setLayout(new GridLayout(20,1,3,3)); + dialog.add(label1);dialog.add(label2);dialog.add(label3);dialog.add(label4); + dialog.add(label5);dialog.add(label6);dialog.add(label7);dialog.add(label8); + dialog.add(label9);dialog.add(label10);dialog.add(label11);dialog.add(label12); + dialog.add(label13);dialog.add(label14);dialog.add(label15);dialog.add(label16); + dialog.add(label17);dialog.add(label18);dialog.add(label19);dialog.add(label20); + //将标签放入消息框 + dialog.setVisible(true); + dialog.setResizable(false); + } + } +} + diff --git a/src/java2020spring/MainClass.java b/src/java2020spring/MainClass.java new file mode 100644 index 0000000000000000000000000000000000000000..474c9604a089ac46c364ff2a418538b3a037b1c1 --- /dev/null +++ b/src/java2020spring/MainClass.java @@ -0,0 +1,14 @@ +package java2020spring; +import java.awt.Color; +import javax.swing.JFrame; +public class MainClass { + public static void main(String args[]) { + CalculatorFrame frame=new CalculatorFrame(); + frame.setTitle("ѧ");//Լ + frame.setBounds(200,200,500,500);//üСʼλ + frame.setVisible(true);//ôڿɼ + frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//ùرշʽ + frame.setResizable(true);//Сɵ + frame.setBackground(Color.LIGHT_GRAY);//üɫ + } +} \ No newline at end of file