PDA

View Full Version : استفاده از ctrl برای باز کردن یک صفحه



MMStudent
جمعه 10 دی 1389, 10:10 صبح
سلام
من یک mdi فرم دارم که پنجره های مختلفی که همه child هستند در این فرم باز میشند من میخوام زمانی
که کار بر کلید های ctrl+n رو فشار داد یه فرم باز بشه لطفا من رو راهنمایی کنید.

sds1920
جمعه 10 دی 1389, 10:22 صبح
تا اونجایی که من می دونم کلیدهای ترکیبی برای فرمها وجود نداره مگر اینکه شما یه روشی توی رویدادها کیبرد فرم درست کنید.
من قبلا این کارو کردم.عملی هست ولی نمیدونم بهینه هست یا نه.
برای مثال شما باید دوتا متغییر bool برای ctrl و یکی برای n درست کنید.
هر وقت ctrl فشار داده می شه متغییر اون true بشه و n هم به همین شکل.
بعد بررسی کنید اگه ctrl و n هر دو true هستند کار خودتون رو انجام بدین.

hadi-z
جمعه 10 دی 1389, 10:43 صبح
با این تیکه کد میتونید این کارو انجام بدید:


form1 f = new form1;
if (e.Alt && e.KeyCode == Keys.A)
f.show();

MMStudent
یک شنبه 12 دی 1389, 19:36 عصر
سلام
من به یک مشکل بر خوردم این کد رو من در رویداد KeyDown فرم نوشتم ولی فقط یک با اجرا میشه یعنی این رویداد فقط یک بار فرا خونی میشه.
ممنون از کمکتون

hadi-z
یک شنبه 12 دی 1389, 21:06 عصر
این بخاطر اینه که وقتی فرم جدید رو باز میکنی، دیگه فوکوس روی فرم جدیده
برای همین بعد از اون رویداد فرم جدید رو پک میکنه
باید فوکوس رو برگردونی رو برم والدت.