PDA

View Full Version : تشخیص ندادن کلید enter بر روی اونت keyDown روی button



hosseinam1370
یک شنبه 31 خرداد 1394, 12:01 عصر
دوستان ، من برای اونت keyDown شئ button ، کد زیر رو نوشتم تا بیاد اون آیتم ها رو بر روی لیبل نشون بده ، و همین کار رو هم میکنه برای همه ی دکمه های کیبرد ، ولی وقتی کلید enter رو میزنم ، هیچ اتفاقی نمی اوفته ، و انگار که اصلا کلید enter زده نشده.
حالا من باید چیکار کنم تا کلید enter رو هم تشخیص بده؟
private void button1_KeyDown(object sender, KeyEventArgs e)
{

label1.Text = e.KeyValue.ToString();
label2.Text = e.KeyCode.ToString();
label3.Text = e.KeyData.ToString();

}


با تشکر.

reza_ali202000
یک شنبه 31 خرداد 1394, 16:06 عصر
اینا رو توی رویداد KEYPRESS بنویسید.

CsharpNevisi
یک شنبه 31 خرداد 1394, 16:14 عصر
خب طبیعتا وقتی روی باتن فوکوس باشه و شما کلید Enter را بزنید رویداد کلیک فراخوانی میشه

alireza264
یک شنبه 31 خرداد 1394, 20:25 عصر
دوستان ، من برای اونت keyDown شئ button ، کد زیر رو نوشتم تا بیاد اون آیتم ها رو بر روی لیبل نشون بده ، و همین کار رو هم میکنه برای همه ی دکمه های کیبرد ، ولی وقتی کلید enter رو میزنم ، هیچ اتفاقی نمی اوفته ، و انگار که اصلا کلید enter زده نشده.
حالا من باید چیکار کنم تا کلید enter رو هم تشخیص بده؟
private void button1_KeyDown(object sender, KeyEventArgs e)
{

label1.Text = e.KeyValue.ToString();
label2.Text = e.KeyCode.ToString();
label3.Text = e.KeyData.ToString();

}


با تشکر.

سلام میتونی خصوصیت KeyPreview فرم رو True کن و دستورات رو توی KeyDown فرم بنویس برای اینکه نام کنترل رو بفهمی از ActiveControl استفاده کن


Control namclr;

namclr = ActiveControl;

hosseinam1370
دوشنبه 01 تیر 1394, 09:43 صبح
اینا رو توی رویداد KEYPRESS بنویسید.

نشد.


سلام میتونی خصوصیت KeyPreview فرم رو True کن و دستورات رو توی KeyDown فرم بنویس برای اینکه نام کنترل رو بفهمی از ActiveControl استفاده کن

نشد. و نفهمیدم active control یعنی چی!!



با تشکر همه دوستان.

alireza264
دوشنبه 01 تیر 1394, 10:51 صبح
نشد.



نشد. و نفهمیدم active control یعنی چی!!



با تشکر همه دوستان.

ActiveControl کنترلی که الان فعال هستش رو بر میگردونه. ابتدا خصوصیت KeyPreview فرم رو True کن


private void Form1_KeyDown(object sender, KeyEventArgs e)
{
Control namclr;
namclr = ActiveControl;
string nam = namclr.Name;

if (e.KeyValue == 13 && nam == "button1")
{
label1.Text = e.KeyValue.ToString();
label2.Text = e.KeyCode.ToString();
label3.Text = e.KeyData.ToString();
}
}