الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تعرف على لوحة المفاتيح

مغلق
بدأه madi في 30 نوفمبر 2001 · 1 رد · 1,336 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام

(i) كلنا نستخدم لوحة المفاتيح في الكتابة وإدخال بعض الأوامر إلى الحاسب الآلي و يمكن إستخدام بعض المفاتيح الموجودة على لوحة المفاتيح بطريقة معينة لتسهل علينا الكثير من الخطوات والأوامر التي نريد الحاسب تنفيذها وهي ما تسمى بإختصارات لوحة المفاتيح أو Keyboard Sortcuts ومن أمثلتها كالتالي:-

مفتاح F10 + Shift : إظهار القائمة التي تظهر عند الضغط على المفتاح الأيمن للفأرة.

مفتاح R + Win : فتح نافذة Run

ضغط مفتاح Shift عند وضع أي أسطوانة مدمجة في الوحدة الخاصة بها: إلغاء التشغيل الأتوماتيكي للإسطوانة.

مفتاح R + Win ثم كتابة نقطة (.) في النافذة التي ستظهر لك ثم Ok : فتح ملف سطح المكتب وإظهار جميع محتويات سطح المكتب.

مفتاح D + Win : الإنتقال إلى سطح المكتب.

مفتاح F2 مع إختيار ما نريده : تغيير أسم الملف أو المجلد أو البرنامج المختار.

مفتاح M + Win : تصغير جميع النوافذ.

مفتاح M + Shift + Win : إعادة تكبير النوافذ التي تم تصغيرها من الأمر السابق.

مفتاح Esc + Alt : الإنتقال إلى النافذة التالية المفتوحة على الحاسب.

مفتاح Esc + Ctrl أو مفتاح Win : فاتح قائمة البداية.

مفتاح Del + Alt + Ctrl : إظهار نافذة إغلاق البرامج.

مفتاح Del + Shift : مسح ما تم إختياره نهائياً دون وضعه في سلة المهملات.

مفتاح E + Win : فتح نافذة مكتشف النوافذ.

مفتاح SysRq أو Print Scrn : وضع نسخة من الشاشة بالكامل في برنامج الحافظة Clipboard.

مفتاح Print Scrn + Alt : وضع نسخة من النافذة المستخدمة حالياً في برنامج الحافظة Clipboard

مفتاح F + Win أو مفتاح F3 : فتح نافذة البحث عن الملفات والمجلدات.

مفتاح Tab + Alt : فتح نافذة يمكن منها الإنتقال بين النوافذ المفتوحة على الشاشة.

مفتاح R + Win : فتح نافذة Run

------------------------------------------------------------------------------------

(i) الان لنرجع الى موضوع البرمجة

توجد في لغة دلفي اختصارات تسهل علين الوصول الى مفاتيح لوحة المفاتيح .

(Virtual Key ( VKموجودة في الدلفي لتساعدنا على البرمجة متلا

نستطيع ان نستخدمها عند الحدت KeyUp

متلا

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if( key = VK_UP) then

end;

اضن ان المتال اوضح كل شي ...

وهده هي كل VK الموجودة في الدلفي (مأخودة من مساعد دلفي)

Virtual Key Code معنى الاختصار

----------------------------------------------------------------------------

VK_LBUTTON Left mouse button

VK_RBUTTON Right mouse button

VK_CANCEL Control+Break

VK_MBUTTON Middle mouse button

VK_BACK Backspace key

VK_TAB Tab key

VK_CLEAR Clear key

VK_RETURN Enter key

VK_SHIFT Shift key

VK_CONTROL Ctrl key

VK_MENU Alt key

VK_PAUSE Pause key

VK_CAPITAL Caps Lock key

VK_KANA Used with IME

VK_HANGUL Used with IME

VK_JUNJA Used with IME

VK_FINAL Used with IME

VK_HANJA Used with IME

VK_KANJI Used with IME

VK_CONVERT Used with IME

VK_NONCONVERT Used with IME

VK_ACCEPT Used with IME

VK_MODECHANGE Used with IME

VK_ESCAPE Esc key

VK_SPACE Space bar

VK_PRIOR Page Up key

VK_NEXT Page Down key

VK_END End key

VK_HOME Home key

VK_LEFT Left Arrow key

VK_UP Up Arrow key

VK_RIGHT Right Arrow key

VK_DOWN Down Arrow key

VK_SELECT Select key

VK_PRINT Print key (keyboard-specific)

VK_EXECUTE Execute key

VK_SNAPSHOT Print Screen key

VK_INSERT Insert key

VK_DELETE Delete key

VK_HELP Help key

VK_LWIN Left Windows key (Microsoft keyboard)

VK_RWIN Right Windows key (Microsoft keyboard)

VK_APPS Applications key (Microsoft keyboard)

VK_NUMPAD0 0 key (numeric keypad)

VK_NUMPAD1 1 key (numeric keypad)

VK_NUMPAD2 2 key (numeric keypad)

VK_NUMPAD3 3 key (numeric keypad)

VK_NUMPAD4 4 key (numeric keypad)

VK_NUMPAD5 5 key (numeric keypad)

VK_NUMPAD6 6 key (numeric keypad)

VK_NUMPAD7 7 key (numeric keypad)

VK_NUMPAD8 8 key (numeric keypad)

VK_NUMPAD9 9 key (numeric keypad)

VK_MULTIPLY Multiply key (numeric keypad)

VK_ADD Add key (numeric keypad)

VK_SEPARATOR Separator key (numeric keypad)

VK_SUBTRACT Subtract key (numeric keypad)

VK_DECIMAL Decimal key (numeric keypad)

VK_DIVIDE Divide key (numeric keypad)

VK_F1 F1 key

VK_F2 F2 key

VK_F3 F3 key

VK_F4 F4 key

VK_F5 F5 key

VK_F6 F6 key

VK_F7 F7 key

VK_F8 F8 key

VK_F9 F9 key

VK_F10 F10 key

VK_F11 F11 key

VK_F12 F12 key

VK_F13 F13 key

VK_F14 F14 key

VK_F15 F15 key

VK_F16 F16 key

VK_F17 F17 key

VK_F18 F18 key

VK_F19 F19 key

VK_F20 F20 key

VK_F21 F21 key

VK_F22 F22 key

VK_F23 F23 key

VK_F24 F24 key

VK_NUMLOCK Num Lock key

VK_SCROLL Scroll Lock key

VK_LSHIFT Left Shift key (only used with GetAsyncKeyState and GetKeyState)

VK_RSHIFT Right Shift key (only used with GetAsyncKeyState and GetKeyState)

VK_LCONTROL Left Ctrl key (only used with GetAsyncKeyState and GetKeyState)

VK_RCONTROL Right Ctrl key (only used with GetAsyncKeyState and GetKeyState)

VK_LMENU Left Alt key (only used with GetAsyncKeyState and GetKeyState)

VK_RMENU Right Alt key (only used with GetAsyncKeyState and GetKeyState)

VK_PROCESSKEY Process key

VK_ATTN Attn key

VK_CRSEL CrSel key

VK_EXSEL ExSel key

VK_EREOF Erase EOF key

VK_PLAY Play key

VK_ZOOM Zoom key

VK_NONAME Reserved for future use

VK_PA1 PA1 key

VK_OEM_CLEAR Clear key

-----------------------------------------------------------------------------------

(i) بعد هده المقدمة يمكن ان نجعل من الدلفى تلعب بلوحة المفاتيح

باستخدام الدالة

keybd_event

متلا

(*)-لو الردنا تشغيل زر Start في الوندوز نضع الكود التالي

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), 0, 0);

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), KEYEVENTF_KEYUP, 0)

لحظ اننا استدعينا الدالة مرتين ....... ؟؟؟؟؟

السبب هو انه عندما نقوم بالضغط على اي زر في لوحة المفاتيح فاننا نقوم بخطوتين وهما الضغط تم افلات الزر .

وهدا ماقمنا به برمجيا فالدالة في الحالة الاولى تمتل الضغط على الزر , اما المرة التانية فتمتل افلات الزر .

(*) متلا نريد ان نعمل عمل CTR+TAB

نضع

keybd_event(VK_MENU , MapVirtualKey(VK_CONTROL, 0), 0, 0);

keybd_event(VK_TAB, MapVirtualKey(VK_CONTROL, 0), 0, 0);

keybd_event(VK_TAB, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0);

keybd_event(VK_MENU , MapVirtualKey(VK_TAB, 0), KEYEVENTF_KEYUP, 0) ;

(*) - تصغير جميع النوافد WIN+M

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), 0, 0);

keybd_event(Ord('M'), MapVirtualKey(Ord('M'), 0), 0, 0);

keybd_event(Ord('M'), MapVirtualKey(Ord('M'), 0), KEYEVENTF_KEYUP, 0);

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), KEYEVENTF_KEYUP, 0)

(*)- فتح شاشة الرن WIN+R

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), 0, 0);

keybd_event(Ord('R'), MapVirtualKey(Ord('R'), 0), 0, 0);

keybd_event(Ord('R'), MapVirtualKey(Ord('R'), 0), KEYEVENTF_KEYUP, 0);

keybd_event(VK_LWIN, MapVirtualKey(VK_LWIN, 0), KEYEVENTF_KEYUP, 0)

(*) - ويمكنك عمل المزيد منهم كما ورد في بداية القائمة

وشكرا (*)

#2

الف شكر

هذا الموضوع مغلق.

مواضيع مشابهة