📄 calui.java
字号:
package frame;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionListener;
public class CalUI extends JFrame{
JTextField txtNumber=new JTextField(10);
CalModel model;
public CalUI(String title) {
super(title);
model=new CalModel();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(txtNumber, BorderLayout.NORTH);
ininMenu();
ininButton();
this.pack();
}
private void ininButton(){
JPanel cpane=new JPanel( new GridLayout(4,6));
ActionListener listener=new CalListener(this,this.model);
JButton a1=new JButton("MC");
a1.addActionListener(listener);
JButton a2=new JButton("7");
a2.addActionListener(listener);
JButton a3=new JButton("8");
a3.addActionListener(listener);
JButton a4=new JButton("9");
JButton a5=new JButton("/");
JButton a6=new JButton("sqrt");
JButton a7=new JButton("MR");
JButton a8=new JButton("4");
JButton a9=new JButton("5");
JButton a10=new JButton("6");
JButton a11=new JButton("*");
JButton a12=new JButton("%");
JButton a13=new JButton("MS");
JButton a14=new JButton("1");
JButton a15=new JButton("2");
JButton a16=new JButton("3");
JButton a17=new JButton("-");
JButton a18=new JButton("1/X");
JButton a19=new JButton("M+");
JButton a20=new JButton("0");
JButton a21=new JButton("+/-");
JButton a22=new JButton(".");
JButton a23=new JButton("+");
a23.addActionListener(listener);
JButton a24=new JButton("=");
a24.addActionListener(listener);
cpane.add(a1);
cpane.add(a2);
cpane.add(a3);
cpane.add(a4);
cpane.add(a5);
cpane.add(a6);
cpane.add(a7);
cpane.add(a8);
cpane.add(a9);
cpane.add(a10);
cpane.add(a11);
cpane.add(a12);
cpane.add(a13);
cpane.add(a14);
cpane.add(a15);
cpane.add(a16);
cpane.add(a17);
cpane.add(a18);
cpane.add(a19);
cpane.add(a20);
cpane.add(a21);
cpane.add(a22);
cpane.add(a23);
cpane.add(a24);
this.add(cpane, BorderLayout.CENTER);
}
private void ininMenu(){
JMenuBar mb = new JMenuBar();
JMenu mb1 = new JMenu("编辑(E)");
JMenu mb2 = new JMenu("查看(V)");
JMenu mb3= new JMenu("帮助(H)");
mb.add(mb1);
mb.add(mb2);
mb.add(mb3);
setJMenuBar(mb);
}
public double getTxtNumber() {
return Double.parseDouble(txtNumber.getText());
}
public void clearTxt(){
this.txtNumber.setText("");
}
public void setTxtNumber(double txtNumber) {
StringBuffer sbf=new StringBuffer(this.txtNumber.getText());
sbf.append(txtNumber);
this.txtNumber.setText(sbf.toString());
}
public void setTxtNumber(String txtNumber) {
StringBuffer sbf=new StringBuffer(this.txtNumber.getText());
sbf.append(txtNumber);
this.txtNumber.setText(sbf.toString());
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(
new Runnable() {
public void run() {
CalUI app=new CalUI("计算器");
app.setVisible(true);}
});
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -