PDA

View Full Version : یک سوال فنی درباره دکمه



reza11_2005
سه شنبه 12 مرداد 1395, 00:09 صبح
سلام
من یک سوال فنی دارم
من دوتا دکمه دارم
دکمه 1 دکمه 2

می خواهم یک تابع بنویسیم
وقتی طرف میاد روی دکمه 1 کلید کند پیغام بدهد دکمه یک انتخاب شده
اگر دکمه 2 کلید شود هم پیام دکمه 2 انتخاب شده نمایش داده می شود

ممنون می شوم من راهنمایی کنید
تشکر

alish123456
سه شنبه 12 مرداد 1395, 00:34 صبح
سلام. یا سوال شما خیلی ساده هست یا این که من متوجه منظورت نشدم:ناراحت:
توی رویداد کلیک دکمت بنویس مسیج باکس دات شو و بعد متن مورد نظرت (کلیک یک انتخاب شد)

reza11_2005
سه شنبه 12 مرداد 1395, 09:22 صبح
تشکر
منظور اینه
داخل یک تابع می خواهم دوتاشون بنویسیم روی هر کدوم کلید کرد بگه کدومه

محمد رضا فاتحی
سه شنبه 12 مرداد 1395, 09:36 صبح
مییشه توضیح بدید کاربردش براتون چیه؟

c0mmander
سه شنبه 12 مرداد 1395, 10:26 صبح
منظورت این بود:


private void button1_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

private void button2_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

private void label1_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

void ShowMessage(object o)
{
if (o is Button)
MessageBox.Show(string.Format("User click on button with name {0}", ((Button)o).Name));
if (o is Label)
MessageBox.Show(string.Format("User click on label with name {0}", ((Label)o).Name));
}

reza11_2005
سه شنبه 12 مرداد 1395, 11:25 صبح
منظورت این بود:


private void button1_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

private void button2_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

private void label1_Click(object sender, EventArgs e)
{
ShowMessage(sender);
}

void ShowMessage(object o)
{
if (o is Button)
MessageBox.Show(string.Format("User click on button with name {0}", ((Button)o).Name));
if (o is Label)
MessageBox.Show(string.Format("User click on label with name {0}", ((Label)o).Name));
}



تشکر
اره دقیقا همینه فقط دکمه 2 تا داریم

C-man 15
سه شنبه 12 مرداد 1395, 11:58 صبح
میشه کلا همه دکمه هایی رو که میخوای رویداد کلیکشون رو تابع زیر بزاری


private void Buttons_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
MessageBox.Show(string.Format("User click on button with name {0}", btn.Name));
}

mrprestige
سه شنبه 12 مرداد 1395, 19:18 عصر
سلام دوست من وقتت بخیر ، دیگه باقی دوستان همه چی رو گفتن و فکر کنم تا الان متوجه شدی که میتونی با اشتفاده از پارامتر sender این کارو بکنی مثلا الان که شما دو تا دکمه دارید به این شکل تابع رو بنویسید

Private void displayButton (Object Sender)
{
var s=string.Empty;
if (Button1==Sender)
{
s="Button1";
}
if (Button2==Sender)
{
s="Button2";
}
MessageBox.Show(" You Pressing :" +Sender) ;

حالا توی رویداد Click کنترل Button1 و Button2 اینطوری بنویس

displayButton(sender);




پیروز موفق باشید.