1 out of 1 members found this post helpful.
ปัญหาคือ num1 ถูกประกาศไว้ในฟังชั่น btnPlus_Click ทำให้มีสถานะเป็น local variable ครับ
ดังนั้น solution ที่คุณ rattisuk บอกไว้นั้นถูกแล้วคือสร้างตัวแปรอยู่นอกฟังชั่น ตัวแปรนั้นจะมีสถานะเป็น global variable คือทุกๆฟังชั่นสามารถเรียกใช้ได้
แต่ว่าตัวแปร num1 ที่อยู่ใน btnPlus_Click เอาออกเลยก็ได้ครับ คิดว่ามันไม่ได้มีความเป็นอะไรเลย
ถ้าเป็นผมจะเขียนแบบนี้ :
private int num;
private int sum;
//โดยส่วนตัวคิดว่าประกาศตัวแปรเป็น private จะดีกว่าครับ(ศึกษาเพิ่มเติมได้ในส่วนของการเขียนโปรแกรมแบบ OOP)
private void btnPlus_Click(object sender, EventArgs e) //เมื่อกดปุ่มบวก
{
num = Convert.ToInt32(txtInput.Text);
txtInput.Clear();
}
private void btnSum_Click(object sender, EventArgs e) //เมื่อกดปุ่มหาผลรวม
{
sum = num + Convert.ToInt32(txtInput.Text);
txtInput.Clear();
txtInput.Text += +"ผลบวกของ" + num1 + "กับ" + num2 + "=" + sum.ToString();
}