ปกติเครื่องคิดเลข พอ 1+1 ละเรากด + อีกทีมันจะผลลัพท์เป็น 2 เลย แต่ของผม มันต้องกด เท่ากับถึงจะขึ้นช่วยดูโค้ดให้หน่อยครับ
if (o==bn12){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=1;
}
else if (o==bn13){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=2;
}
else if (o==bn14){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=3;
}
else if (o==bn15){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=4;
}
if (o==bn16){
number2=Integer.parseInt(tf.getText());
if(add==1){
result=num1+number2;
tf.setText(new Integer(result).toString());
}
else if(add==2){
result=num1-number2;
tf.setText(new Integer(result).toString());
}
else if(add==3){
result=num1*number2;
tf.setText(new Integer(result).toString());
}
else if(add==4){
result=num1/number2;
tf.setText(new Integer(result).toString());
}
}
}
คือช่วยที่คำนวณครับ
if (o==bn12){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=1;
o=bn16;
}
else if (o==bn13){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=2;
o=bn16;
}
else if (o==bn14){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=3;
o=bn16;
}
else if (o==bn15){
num1=Integer.parseInt(tf.getText());
tf.setText("");
add=4;
o=bn16;
}
if (o==bn16){
number2=Integer.parseInt(tf.getText());
if(add==1){
result=num1+number2;
tf.setText(new Integer(result).toString());
}
else if(add==2){
result=num1-number2;
tf.setText(new Integer(result).toString());
}
else if(add==3){
result=num1*number2;
tf.setText(new Integer(result).toString());
}
else if(add==4){
result=num1/number2;
tf.setText(new Integer(result).toString());
}
}
}
ลองแบบนี้ดูครับ java ไม่ค่อยเก่งครับ แต่ดู code แล้ว คุณต้อง ส่งการทำงาน ให้เข้าไปในส่วนของ bn16 ด้วยครับ