diff --git a/src/java2020spring/Test.java b/src/java2020spring/Test.java index fc09c195f566d0e707f5e8a2f05fd168069c73a7..31826699f1fedf5c4013ece7b492b6aab42a0262 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!"); + new calculatorFrame(); } diff --git a/src/java2020spring/calculatorFrame.java b/src/java2020spring/calculatorFrame.java new file mode 100644 index 0000000000000000000000000000000000000000..c6c5875b3d5a3262117843e3057a49d495f260a3 --- /dev/null +++ b/src/java2020spring/calculatorFrame.java @@ -0,0 +1,373 @@ +package java2020spring; + +import java.awt.BorderLayout; +import java.awt.CardLayout; +import java.awt.Font; +import java.awt.GridLayout; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.*; + +public class calculatorFrame extends JFrame implements ActionListener { + JMenuBar menubar; + JMenu menu; + JMenuItem item1,item2; + JPanel panel,panel1,panel2; + CardLayout card; + JTextField text; + String operator=null,//记录运算符 + number=null,//记录数字 + ms=null;//记录存储数字 + boolean point=false,//判断是否已经有小数点了 + num=false,//判断是否按了加减乘除取余数运算符 + error=false;//判断是否出现运算错误 + + calculatorFrame(){//计算器总页面 + setMenu(); + setText(); + card=new CardLayout(); + panel=new JPanel(); + panel.setLayout(card); + setCalculator1(); + setCalculator2(); + add(panel,BorderLayout.CENTER); + setBounds(100, 100, 400, 400); + setVisible(true); + setDefaultCloseOperation(DISPOSE_ON_CLOSE); + pack(); + } + + public void setMenu() {//设计菜单 + menubar=new JMenuBar(); + menu=new JMenu("计算器类型"); + item1=new JMenuItem("标准计算器"); + item2=new JMenuItem("科学计算器"); + item1.addActionListener(this); + item2.addActionListener(this); + menu.add(item1); + menu.add(item2); + menubar.add(menu); + setJMenuBar(menubar); + } + + public void setText() {//设计文本区 + text=new JTextField("0"); + text.setFont(new Font("楷体",Font.PLAIN, 20)); + text.setSize(400, 100); + text.setHorizontalAlignment(JTextField.RIGHT);//光标向右对齐 + text.setEditable(false); + add(text,BorderLayout.NORTH); + } + + public void setCalculator1(){ //设置标准计算器的界面 + panel1=new JPanel(); + panel1.setLayout(new GridLayout(7,4)); + String buttonText[]= {"MC","MR","MS","M+","%","CE","C","删除","1/x","x^2","√x" + ,"/","7","8","9","X","4","5","6","-","1","2","3","+", + "+/-","0",".","="}; + JButton button[] = new JButton[buttonText.length]; + for(int i=0;i