خواندن کلید های جهت نما (Arrow Keys)
سلام
من توی فرم اصلی برنامه ام می خوام برای کلید های جهت نمای چپ و راست یه کار خاصی نعریف کنم برای این کار از Event (رخداد!) Key Down استفاده کردم ولی این رخداد (!) کلید های جهت نما رو نمی خونه - یعنی اصلاً تریگر نمی شه از دوستان خواهش می کنم راهنمایی کنند.
با تشکر پیش ا پیش فراوان!
:قلب:
توضیح کوچولو منظور من از کلید های جهت نما چهار کلید بالا پایین چپ و راست هستش که سمت چپ نام پد یا همون کلید های اعداد یک تا نه هست!
نقل قول: خواندن کلید های جهت نما (Arrow Keys)
سلام
بعد از لود شدن فرم، focus به یکی از کنترلهای تو فرم میره واسه همین کلید فشاد داده شده به اون کنترل ارسال میشه نه به فرم.
اگر کنترل دکمه نباشه با
this.KeyPreview = true;
کلید فشار داده شده به فرم هم ارسال میشه
نقل قول: خواندن کلید های جهت نما (Arrow Keys)
نقل قول:
نوشته شده توسط
behzad1986
سلام
بعد از لود شدن فرم، focus به یکی از کنترلهای تو فرم میره واسه همین کلید فشاد داده شده به اون کنترل ارسال میشه نه به فرم.
سلام دوست عزیز من روی کنترل های دیگه هم این ایونت رو اعمال کردم همه کلید ها رو می خونه جز کلید های جهت نما و Enter، Ctrl و چند تای دیگه!
نقل قول: خواندن کلید های جهت نما (Arrow Keys)
این کد رو تست کن
private void KeyPres(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
MessageBox.Show("left");
}
نقل قول: خواندن کلید های جهت نما (Arrow Keys)
نقل قول:
نوشته شده توسط
behzad1986
این کد رو تست کن
private void KeyPres(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Left)
MessageBox.Show("left");
}
همونطوری که می دونی هم Key Down داریم هم Key Pressed اینی که شما فرمودین برای Key Pressed هستش چون Key Down نوع آرگومان دومیش KeyPressEventArgs هست که e.KeyCode نداره! برای Key Down داره ولی کار نمی کنه یعنی با زدن Left Arrow مسیج باکس نشون نمی ده!
نقل قول: خواندن کلید های جهت نما (Arrow Keys)
سلام
توی لود فرم می نویسید:
this.KeyPreview = true;
بعد توی رویداد KeyDown هم همون کدهای خودتون رو می نویسید:
if (e.KeyCode == Keys.Left)
{
MessageBox.Show("left pressed");
}