تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ما الحدث الذي يطلقه الزر Tab
#1
السلام عليكم
كل الازرار تطلق الحدث KeyDown وغيره ما عدا الزر تاب
ما الحدث الذي يطلقه
كيف اعرف ان المستخدم ضغط عليه
الرد }}}}
تم الشكر بواسطة:
#2
الحدث الافتراضي هو.......SelectedIndexChanged

و في اللينك التلي ستجد قائمة بكل الاحداث الخاصة بهذا الكونترول

اللينــــــــــــــــــــك
الرد }}}}
تم الشكر بواسطة: kslawy , ربيع
#3
اخي جزاك الله خيرا
انا اقول الزر Tap ما قولت الاوبجكت TabControl
هههه
الزر تاب من لوحة المفاتيح
الرد }}}}
تم الشكر بواسطة: ربيع
#4
ههههههههههههههه.............عفوا

عموما كل الباتون الموجودة علي لوحة المفاتيح لها قيمة
بخصوص Tab

هي تقوم ب القفز من كونترول الي كونترول اخر داخل الفورم و هكذا
لكن في حالة الكتابة داخل TextBox مثلا فهي تقفز مسافة ثابتة معينة
الرد }}}}
تم الشكر بواسطة: kslawy , ربيع
#5
إقتباس :لكن في حالة الكتابة داخل TextBox مثلا فهي تقفز مسافة ثابتة معينة

لا يتم عندي ذلك
بل ينتقل ايضا الي العنصر التالي

الفكرة : اريد عند الضغط علي الزر Tap يفعل شي معين هل يوجد طريقة لذلك
الرد }}}}
تم الشكر بواسطة: kslawy , ربيع
#6
السلام عليكم

تستطيع ذلك باستخدام LostFocus للحدث المطلوب

يعطيك العاقية
شـــايـفـــك

الرد }}}}
تم الشكر بواسطة: kslawy , ربيع
#7
السلام عليكم...

العديد من المكونات تعتبر بعض المفاتيح كمفاتيح تنقل (Navigation Keys) و ليست مفاتيح إدخال (Input Keys). و بالتالي لا يتم قدح الحدث KeyDown لتلك النفاتيح. مثلاً المكون Button يعامل مفاتيح الأسهم كمفاتيح تنقل و بالتالي لا يقع الحدث KeyDown مع مفاتيح الأسهم على الـ Button.

نفس الأمر يكون مع معظم المكونات بالنسبة إلى المفتاح Tab. أي أنه يُعتبر مفتاح تنقل و ليس مفتاح إدخال.

للتعامل مع هذه الحالات لديك خياران بسيطان، و كلاهما يحتاج إلى استعمال الحدث PreviewKeyDown الذي يحدث قبل الحدث KeyDown مهما كان المفتاح المضغوط:

1. إذا كنت تريد التعامل مع ضغط المفتاح Tab مع السماح بالانتقال إلى المكون التالي (لأن المفتاح Tab يعمل بشكل افتراضي على الانتقال إلى المكون التالي) فاكتب الكود الذي تريده مباشرة في إجراء الحدث PreviewKeyDown. لا يمكنك هنا إلغاء السلوك الافتراضي للمفتاح Tab (أو أي مفتاح آخر) لأن البارامتر e الذي يحتوي على بارامترات الحدث (من النوع PreviewKeyDownEventArgs) لا يحتوي على الخاصية Handled.

2. إذا كنت تريد التعامل مع ضغط المفتاح Tab مع إلغاء عمله الافتراضي (أي منع الانتقال إلى المكون التالي):

أ. اكتب في الحدث PreviewKeyDown الكود التالي:

كود :
If e.KeyCode = Keys.Tab Then
        e.IsInputKey = True
    End If

حيث هذا الكود يجعل المكون يعتبر أن المفتاح Tab هو مفتاح إدخال، و بالتالي سيعمل على قدح الحدث KeyDown.

ب. اذهب إلى الحدث KeyDown و اكتب الكود الذي تريده.

* ستلاحظ في الحالة الثانية (أي استعمال e.IsInputKey = True و كتابة الكود في الحدث KeyDown) أن الـ Focus لا تنتقل من المكون إلى المكون الذي يليه.

نرجو الاستفادة و السلام.
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيمِ ( وَ مَا تُقَدِّمُوا لِأَنفُسِكُم مِّنْ خَيْرٍ تَجِدُوهُ عِندَ اللهِ هُوَ خَيْراً وَ أَعْظَمَ أَجْراً ) صَدَقَ اللهُ الْعَظِيمُ
الرد }}}}
تم الشكر بواسطة: kslawy , ربيع , Sniper.ps , الشاكي لله , a_almisery , Aly El-Haddad
#8
نحمده ونصلي على رسوله الكريم

اجعل خاصية الـ keypreview للنموذج تساوي true واستخدم حدث الـ keypress التابع للنموذج ايضا لكتابة:
كود :
If CByte(e.KeyChar) = 9 Then
    MessageBox.Show("[TAB]")
End If
الرد }}}}
تم الشكر بواسطة: Sniper.ps
#9
السلام عليكم ورحمة الله

اسف علي التأخير في الرد كنت مشغول جدا الله المستعان

جزاكم الله خيرا وبارك فيكم
اخي ناجي كفيت ووفيت اسئل الله تعالي ان يجزيك خيرا
انا وجدت نفس التوضيح عندما بحثت لاكن للاسف ظنيت ان الزر تاب لا يفجر اي حدث حتي الحدث PreviewKeyDown فقلت كيف لي ان اكتب كود في حدث لن يتم تفجيره
وهذا الخطاء طبعا استفدت منه فائدة كبيرة وهي
يجب ان اجرب اي كود قبل ان احكم عليه مجرد القراءة السريعة للكود لا تكفي في الحكم عليه الا ان كان هناك سايق تجربة طبعا هههه


اخي ربيع جزاك الله خيرا
ولي سؤال هل الخاصية keypreview تجعل الفورم يتلقي الحدث قبل الاوبجكت
الرد }}}}
تم الشكر بواسطة: ربيع
#10
نحمده ونصلي على رسوله الكريم

لا اعلم ذلك مسبقا لكني جربت التالي:
كود :
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
    MessageBox.Show("Form");
}

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    MessageBox.Show("Control");
}

وكانت الاسبقية للنموذج....
الرد }}}}
تم الشكر بواسطة: ali.alfoly


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفيه تشغيل الفورم بالتاريخ الذي يحدده المستخدم ddemed 5 129 23-11-16, 10:12 PM
آخر رد: السرور
  [سؤال] التعامل مع الزر الموجود في DataGrideView هل يستطيع حذف الصف الذي به البتن thevirus 1 105 10-11-16, 09:20 PM
آخر رد: ابراهيم النعيمي
  التعديل الذي أقوم به في الفورم لا يظهر عند عمل RUN نسيم 8 202 07-11-16, 01:14 PM
آخر رد: zinom
  [سؤال] هل يلزم تثبيت SQL Server في جهاز الزبون الذي ستبيع له برنامجك ام هناك طريقة اخرى؟ thevirus 3 149 06-11-16, 07:51 PM
آخر رد: العواد الصغير
  [سؤال] جعل المستخدم يحدد عنوان اي بي السيرفر الذي عليه قاعدة البيانات thevirus 0 58 04-11-16, 10:38 AM
آخر رد: thevirus
  تشغيل الفورم بتاريخ الضغط علي الزر ddemed 3 129 28-10-16, 10:01 AM
آخر رد: ddemed
  تصحيح الخطاء في السطر الذي لونه احمر تحته خط علي كعبي 1 93 17-09-16, 07:48 PM
آخر رد: silverlight
  [سؤال] يف اعمل حلقة تكرار للضغط على هذا الزر ابو روضة 12 374 22-08-16, 09:09 AM
آخر رد: أبو عمر
  تخمين الرقم الذي اخترت سعود 6 169 19-08-16, 06:56 PM
آخر رد: سعود
  كيف اعرف الرابط من خلال الحدث WebBrowser1_NewWindow سعود 7 173 28-06-16, 07:56 AM
آخر رد: الوادي

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم