ساخت ماشین حساب در ویندوز فرم
جلسات دوره
مهدی احمدی
از سال 1380 برنامه نویسی را شروع کرده و از سال 90 در این زمینه تدریس میکنم .با زبانهای سی پلاس پلاس ، سی ،پاسکال ،VB ، سی شارپ ،اسمبلی، جاوا و .... کار کرده و آنها را تدریس کرده ام.هم اکنون نیز مشغول تدریس در دانشگاه هستم و مدتی است با سایت درسمن همکاری میکنم مشاهده رزومه
ابتدا یک فرم به شکل ماشین حساب میسازیم.
حال باید در رویداد کلیک دکمههایی که روی آنها عدد نوشته شده است، دستوراتی بنویسیم که متن این دکمهها را درون کادر متن بالا نمایش دهد.
private void numbtnclick(object sender, EventArgs e)
{
textBox1.Text += ((Button)sender).Text;
}
اکنون میخواهیم دکمه معکوس (1/x) کار کند. برای این کار در رویداد کلیک این دکمه، دستورات زیر را مینویسیم. در بیرون تابع یک متغیر تعریف میکنیم تا همه تابعها بتوانند از آن استفاده کنند.
double num1 = 0; //متغیر تعریف
private void button23_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
num1 = 1 / num1;
textBox1.Text = num1.ToString();
}
حال میخواهیم دکمه جزر (√) کار کند. برای این کار در رویداد کلیک این دکمه، دستورات زیر را مینویسیم.
private void button25_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
num1 = Math.Sqrt(num1);
textBox1.Text = num1.ToString();
}
حال میخاهیم دکمه معکوس علامت (±) کار کند. برای این کار در رویداد کلیک این دکمه، دستورات زیر را مینویسیم.
private void button15_Click(object sender, EventArgs e)
{
num1 = Convert.ToDouble(textBox1.Text);
num1 = -num1;
textBox1.Text = num1.ToString();
}
حال میخاهیم دکمه (C) کار کند، این دکمه همه کادر متن را پاک میکند. برای این کار در رویداد کلیک این دکمه، دستورات زیر را مینویسیم.
private void button20_Click(object sender, EventArgs e)
{
textBox1.Text = "0";
}
حال میخاهیم دکمه (→) کار کند، این دکمه آخرین کاراکتر کادر متن را پاک میکند. برای این کار در رویداد کلیک این دکمه، دستورات زیر را مینویسیم.
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = textBox1.Text.Remove(textBox1.Text.Length - 1);
}
حال میخاهیم دکمههای (=و-،×،÷،+) کار کنند. برای این کار در رویداد کلیک این دکمهها، دستورات زیر را مینویسیم. ما نیاز به یک متغیر برای نگهداری علامت داریم که آنرا از نوع char و در بیرون تابع تعریف میکنیم.
char op; //متغیر تعریف
private void opbtnclick(object sender, EventArgs e) //ها عملگر کلیک رویداد
{
num1 = Convert.ToDouble(textBox1.Text);
op = Convert.ToChar(((Button)sender).Text);
textBox1.Text = "0";
}
private void button22_Click(object sender, EventArgs e) //مساوی کلیک رویداد
{
double num2 = 0;
num2 = Convert.ToDouble(textBox1.Text);
switch (op)
{
case '+':
num1 = num1 + num2;
break;
case '-':
num1 = num1 - num2;
break;
case '*':
num1 = num1 * num2;
break;
case '/':
num1 = num1 / num2;
break;
}
textBox1.Text = num1.ToString();
}
امیدواریم که این آموزش برای شما مفید واقع شده باشد. در قسمت بعد قصد داریم که در کنار شما عزیزان با ساخت منو(Menustrip) آشنا شویم. لطفاً با ما همراه باشید...
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.