📄 frame1.java
字号:
ActionListener a14=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jBa_Opequal.doClick();
}
};
getRootPane().registerKeyboardAction(
a14,KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
getRootPane().registerKeyboardAction(
a14,KeyStroke.getKeyStroke(KeyEvent.VK_EQUALS,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
getRootPane().registerKeyboardAction(
a14,KeyStroke.getKeyStroke(KeyEvent.VK_ENTER,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------=
//------------------------------------------------------.
ActionListener a15=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jBa_Opdel.doClick();
}
};
getRootPane().registerKeyboardAction(
a15,KeyStroke.getKeyStroke(KeyEvent.VK_DECIMAL,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------.
//------------------------------------------------------<-
ActionListener a16=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton2.doClick();
}
};
getRootPane().registerKeyboardAction(
a16,KeyStroke.getKeyStroke(KeyEvent.VK_BACK_SPACE,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------<-
//------------------------------------------------------ce
ActionListener a17=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jBb_CE.doClick();
}
};
getRootPane().registerKeyboardAction(
a17,KeyStroke.getKeyStroke(KeyEvent.VK_C,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------ce
//------------------------------------------------------M
ActionListener a18=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton4.doClick();
}
};
getRootPane().registerKeyboardAction(
a18,KeyStroke.getKeyStroke(KeyEvent.VK_M,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------M
//------------------------------------------------------N(M-)
ActionListener a19=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton3.doClick();
}
};
getRootPane().registerKeyboardAction(
a19,KeyStroke.getKeyStroke(KeyEvent.VK_N,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------N(M-)
//------------------------------------------------------ESC
ActionListener a20=new ActionListener(){
public void actionPerformed(ActionEvent ae){
int rr=JOptionPane.showConfirmDialog(null," 确定要退出计算器吗?","退出?",JOptionPane.YES_NO_OPTION);
if(rr==JOptionPane.YES_OPTION){
System.exit(0);}
}
};
getRootPane().registerKeyboardAction(
a20,KeyStroke.getKeyStroke(KeyEvent.VK_ESCAPE,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//------------------------------------------------------ESC
//------------------------------------------------------%
ActionListener a21=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton8.doClick();
}
};
getRootPane().registerKeyboardAction(
a21,KeyStroke.getKeyStroke(KeyEvent.VK_5,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------%
//------------------------------------------------------F
ActionListener a22=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton6.doClick();
}
};
getRootPane().registerKeyboardAction(
a22,KeyStroke.getKeyStroke(KeyEvent.VK_F,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------F
//------------------------------------------------------E
ActionListener a23=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jBb_VE.doClick();
}
};
getRootPane().registerKeyboardAction(
a23,KeyStroke.getKeyStroke(KeyEvent.VK_E,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------E
//-----------------------------------------------------<
ActionListener a24=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton7.doClick();
}
};
getRootPane().registerKeyboardAction(
a24,KeyStroke.getKeyStroke(KeyEvent.VK_F1,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------<
//------------------------------------------------------p
ActionListener a25=new ActionListener(){
public void actionPerformed(ActionEvent ae){
jButton39.doClick();
}
};
getRootPane().registerKeyboardAction(
a25,KeyStroke.getKeyStroke(KeyEvent.VK_P,0,false),
JComponent.WHEN_IN_FOCUSED_WINDOW);
//-------------------------------------------------------p
///////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
}
/**外观设置函数*/
public void plaf(){
try{
UIManager.setLookAndFeel(plafName);//换外观
SwingUtilities.updateComponentTreeUI(this);//在程序里转换外观要用到此函数
this.pack();
jLabel1.setForeground(UIManager.getColor("Desktop.background"));
}
catch(Exception ep){}
}
/**运算符函数*/
public void operator(){
b4=true;//判断已按运算符号
b2=false;//b2返回false,再次允许输入“.”号
if(b5==false){
try{
c1=Float.valueOf(jTshow.getText()).floatValue();//把屏幕值赋给c1缓存起来
a1=new StringBuffer("");//清空a1,让其可以继续添加新数值
}
catch(Exception r){
jTshow.setText("0.");
a1=new StringBuffer("");
c1=0;
}}
if(b5==true){
try{a1=new StringBuffer("");//清空a1,让其可以继续添加新数值
c2=Float.valueOf(jTshow.getText()).floatValue();//把屏幕值赋给c1缓存起来
a1.append("");}
catch(Exception r){
jTshow.setText("0.");
a1=new StringBuffer("");
a1.append("");
b2=false;//b2返回false,再次允许输入“.”号
}
this.count(b1);
}
}
/**运算判断函数*/
public void count(int x){
switch (x){
case 1://加法
c3=c1+c2;//c3为答案值,等于第一个数c1和第二个数c2
jTshow.setText(String.valueOf(c3));//显示答案
c1=c3;
break;
case 2://减法
c3=c1-c2;//两数之差
jTshow.setText(String.valueOf(c3));
c1=c3;
break;
case 3://乘法
c3=c1*c2;//两数之积
jTshow.setText(String.valueOf(c3));
c1=c3;
break;
case 4://除法
c3=c1/c2;//两数之商
jTshow.setText(String.valueOf(c3));
c1=c3;
break;
case 5://求余(%)
c3=c1%c2;//c1除以c2后的余数
jTshow.setText(String.valueOf((int)c3));
c1=c3;
break;
case 6:
try{
double c4=Math.pow(c1,c2);//求C1的C2次方的函数
jTshow.setText(String.valueOf(c4));
c1=(float)c4;
}
catch(Exception r){}
break;
case 7:
try{
double c4=Math.pow(c1,c2);//求C1的C2次方的函数
jTshow.setText(String.valueOf(c4));
c1=(float)c4;
}
catch(Exception r){}
break;
}
}
//File | Exit action performed
public void jMenuFileExit_actionPerformed(ActionEvent e) {
System.exit(0);
}
/**该函数用于初始化Frame1_AboutBox*/
public void jMenuHelpAbout_actionPerformed(ActionEvent e) {
Frame1_AboutBox dlg = new Frame1_AboutBox(this);
dlg.setBounds(this.getX()-50,this.getY()-50,584,450);
dlg.setResizable(false);
dlg.show();
}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
jMenuFileExit_actionPerformed(null);
}
}
/**按钮“1”的事件*/
void jBa_Num1_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{
b5=true;
}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if(a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("1");//为0则清空a1,把按钮说代表的值新赋给a1
jTshow.setText(a1.toString());//显示a1.
}
else{
a1.append("1");//a1不为0则在a1后加上按钮所代表的值
jTshow.setText(a1.toString()); }//显示a1
}
/**按钮“2”的事件*/
void jBa_Num2_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{b5=true;}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if(a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("2");//为0则清空a1,把按钮说代表的值新赋给a1
jTshow.setText(a1.toString());//显示a1.
}
else{
a1.append("2");//a1不为0则在a1后加上按钮所代表的值
jTshow.setText(a1.toString());}//显示a1
}
/**按钮“3”的事件*/
void jBa_Num3_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{b5=true;}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if(a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("3");//为0则清空a1,把按钮说代表的值新赋给a1
jTshow.setText(a1.toString());//显示a1.
}
else{
a1.append("3");//a1不为0则在a1后加上按钮所代表的值
jTshow.setText(a1.toString());}//显示a1
}
/**按钮“4”的事件*/
void jBa_Num4_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{b5=true;}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if( a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("4");//为0则清空a1,把按钮说代表的值新赋给a1
jTshow.setText(a1.toString());//显示a1.
}
else{
a1.append("4");//a1不为0则在a1后加上按钮所代表的值
jTshow.setText(a1.toString());}//显示a1
}
/**按钮“5”的事件*/
void jBa_Num5_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{b5=true;}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if(a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("5");//为0则清空a1,把按钮说代表的值新赋给a1
jTshow.setText(a1.toString());//显示a1.
}
else{
a1.append("5");//a1不为0则在a1后加上按钮所代表的值
jTshow.setText(a1.toString());}//显示a1
}
/**按钮“6”的事件*/
void jBa_Num6_actionPerformed(ActionEvent e) {
if(b4==false){
b5=false;
}
else{b5=true;}
b6=false;
if(a1.length()<=23) //屏幕只能显示23位,判断a1的长度是否大于23,小于的话则执行后面语句
if(a1.toString().equals("0")){//判断a1的值是否为0如果为0则清空a1
a1=new StringBuffer("6");//为0则清空a1,把按钮说代表的值新赋给a1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -