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

Key events

بدأه يسر في 28 يوليو 2011 · 19 رد · 1,185 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

انا عندي فورم و فيه زر و اريد ان يتم الضغط عليه عندما اضغط زر Enter

جربت الاحداث KeyPress and KeyDown لكن لم احصل على النتيجة المطلوبة (لم يحدث اي شئ)

ممكن المساعدة

سبحان الله و بحمده سبحان الله العظيم

#2

الفورم لها خاصية اسمها AcceptButton قومى باختيار الزر المطلوب وسيتم عمل ما تريدين بإذن الله

كما تحتوى الفورم على خاصية أخرى هى CancelButton وهى تمثل الزر الذى سيتم الضغط عليه إذا ضغط المستخدم زر Escape

1

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#3

السلام عليكم ورحمه الله وبركاته

اخي يمكنك استخدام الكود التالي

	Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
    	If keyData = Keys.Enter Then
        	Button1.PerformClick()
    	Else
        	Button2.PerformClick()
    	End If
	End Function
1

.:: Wish to become better and better ::.

#4
GHOST2010 كتب:

الفورم لها خاصية اسمها AcceptButton قومى باختيار الزر المطلوب وسيتم عمل ما تريدين بإذن الله

كما تحتوى الفورم على خاصية أخرى هى CancelButton وهى تمثل الزر الذى سيتم الضغط عليه إذا ضغط المستخدم زر Escape

السلام عليكم

شكرا لك اخي

اشتغلت معي و الحمد لله

ربنا يجعلها في ميزان حسناتك

سبحان الله و بحمده سبحان الله العظيم

#5
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي يمكنك استخدام الكود التالي

	Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
    	If keyData = Keys.Enter Then
        	Button1.PerformClick()
    	Else
        	Button2.PerformClick()
    	End If
	End Function

السلام عليكم

شكرا اخي لتعاونك معي

بس الصراحة ما فهمت فين ينحط الكود بالضبط حتي يتم تنفيذة

سبحان الله و بحمده سبحان الله العظيم

#6

السلام عليكم ورحمه الله وبركاته

اخي قم بوضعها ضمن فئة الفورم ..

.:: Wish to become better and better ::.

#7
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي قم بوضعها ضمن فئة الفورم ..

اخي الكريم

انا قصدي اين يتم استدعاء الدالة و من اين احضر قيم الباراميترز الخاصة بها

سبحان الله و بحمده سبحان الله العظيم

#8

السلام عليكم ورحمه الله وبركاته

اخي لا داعي لتمرير اي وسائط للاجراء ببساطه قم بكتابة كود النقر على الزر

.:: Wish to become better and better ::.

#9
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي لا داعي لتمرير اي وسائط للاجراء ببساطه قم بكتابة كود النقر على الزر

السلام عليكم

رمضان كريم اولا

ثانيا كيف لا امرر وسائط مع اني استخدمها في الكود مثل

keydata

كما انا الدالة لا تحتوي على

return

و شكرا

سبحان الله و بحمده سبحان الله العظيم

#10

السلام عليكم ورحمه الله وبركاته

اخي جربها وشوف!!

.:: Wish to become better and better ::.

#11

ما شاء الله لا قوة الا بالله الواحد بيفرح لما يشوف سرعة الردود ودقتها

#12
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي جربها وشوف!!

السلام عليكم

اخي قمت بوضعها في كود الفورم و على طول طلع لي خطأ انه لاتوجد return value

سبحان الله و بحمده سبحان الله العظيم

#13

السلام عليكم

وجدت الحل لللتعرف على الازرار و هو ان الفورم له خاصية تسمح بتفعيل الاحداث الخاصة بالازرار

يجب اعطاء قيمة

true

الخاصية هي

KeyPreview

يمكن كتابة الكود التالي لتفعيلها في الحدث

load

الخاص بالفورم

                           KeyPreview = True

المشكلة الجديدة التي ظهرت لي اني لم اتمكن التعرف على ازرار الاسهم عند الضغط عليها رغم استعمالي الكود التالي

Private Sub SavetoFile_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown

If (e.KeyCode = 37 Or e.KeyCode = 38 Or e.KeyCode = 39 Or e.KeyCode = 40) Then

MsgBox(" Arrow key was pressed")

End If

End Sub

سبحان الله و بحمده سبحان الله العظيم

#14

السلام عليكم ورحمه الله وبركاته

اخي جرب الكود التالي

 Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
    	If e.KeyCode = Keys.Up Or e.KeyCode = Keys.Down Or e.KeyCode = Keys.Right Or e.KeyCode = Keys.Left Then
        	MessageBox.Show("Arrow key has been pressed!!")
    	End If
	End Sub

.:: Wish to become better and better ::.

#15

يا اختي بدون اكواد الفورم به خاصية تسمي AcceptButton اضغطي امامها ستظهر لك جميع الازرار الموجودة علي الفورم الزر التي ستختاريه سيكون هو الفعال عند الضغط علي زر انتر

ولا يمكن اختيار اكثر من زر

#16
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي جرب الكود التالي

 Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
    	If e.KeyCode = Keys.Up Or e.KeyCode = Keys.Down Or e.KeyCode = Keys.Right Or e.KeyCode = Keys.Left Then
        	MessageBox.Show("Arrow key has been pressed!!")
    	End If
	End Sub

السلام عليكم

جربتها و ما اشتغلت

سبحان الله و بحمده سبحان الله العظيم

#17
يسر كتب:

السلام عليكم

جربتها و ما اشتغلت

سؤال هو في فرق بين كيبورد الكمبيوتر العادي و اللابتوب بالنسبة للvb.net

سبحان الله و بحمده سبحان الله العظيم

#18

السلام عليكم ورحمه الله وبركاته

اخي انا مجربها على اللابتوب, بس تأكد من ان الخاصيه KeyPreview=True

.:: Wish to become better and better ::.

#19
VB Helper كتب:

السلام عليكم ورحمه الله وبركاته

اخي انا مجربها على اللابتوب, بس تأكد من ان الخاصيه KeyPreview=True

ايوة تأ كدت من الخاصية KeyPreview

بعدين كل الازرار لو ضغطت عليها يشتغل الحدث ما عدى الاسهم

فقط الاسهم عند الضغط عليها لا يحذث شيء

سبحان الله و بحمده سبحان الله العظيم

#20

السلام عليكم

انا جربت و انشأت تطبيق جديد و جربت فيه الكود و اشتغل

الظاهر انه المشكلة في التطبيق القديم

العفو منك اخي تعبتك معي

سبحان الله و بحمده سبحان الله العظيم

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