שלום לכולם,
אני מחפש דרך ב-C# לנתח מקשים שנלחצים במקלדת.
כולם מכירים את ה Events של KeyDown או KeyPress או KeyUpכל אלו עובדים יפה, אבל רק שהפוקוס נמצא ב-Form או בפקדים.
התוכנה שבניתי, פועלת ב-Tray כל הזמן, ואני רוצה לעשות מקשי קיצור.
הצלחתי לעשות משהו כזה אבל בעזרת קוד שכל פעם בודק איזה מקש נלחץ דרך ה-User32.dll (זה הקוד הבא)
//הגדרת השיטה, מתוך קובץ חיצוני public static extern short GetAsyncKeyState(int vKey); //דוגמא לשימוש השיטה while (true) { if (GetAsyncKeyState((int)System.Windows.Forms.Keys.A) != 0) MessageBox.Show("A was pressed"); }
|
הבעיה בקוד הזה כמו שאתם רואים הוא ללא Event ולכן יש צורך לבדוק בלולאה של While(True) (שפועלת תמיד) איזה מקש נלחץ.
למישהו יש דרך לפתור לי את הבעיה? או בעצם קוד אחר לגמרי?
תודה רבה!!