السادة الزملاء
غاب عن ذهني وبحتت عنه لم اتذكر اين هو بالمنتدي
كيفية تنفيذ اوامر عن طريق الضغط علي مفتاح f1 مثلا
مع ضبط خاصية معينه للفورم
انا اسف لتعبكم معي
شكرا
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.F1 Then
MsgBox("F1")
End If
End Sub
تم انشاء مثال بسيط للغاية، وتم وضع الكود بداخله
وعند الضغط على زر F1
لم تظهر الرسالة
مما يدل على ان الكود لايعمل
كما قال الاستاذ ناجي ابراهيم الخاصية KeyPreview والسبب
لايتم اقتناص حدث Form1_KeyDown اذا كان التركيز على اداة ثانية غير الفورم وبتغير هذا الخاصية يتم اقتناصه بغض النظر عن التركيز
ByVal sender As System.Object, ByVal e As System.EventArgs
الحل اذا كنت تريده بنفس الزر
كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.Escape Then
Call Button1_Click(New Object, New EventArgs)
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Close()
End Sub
او بعمل طريقة وحدها بدون قيم
كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.Escape Then
Call CloseMe()
End If
End Sub
30-10-13, 06:09 PM (آخر تعديل لهذه المشاركة : 30-10-13, 06:11 PM {2} بواسطة الشاكي لله.)
(30-10-13, 06:01 PM)3booody كتب : السبب لايمكنك استدعاء الطريقة الا بأرسال قيمتين
كود :
ByVal sender As System.Object, ByVal e As System.EventArgs
الحل اذا كنت تريده بنفس الزر
كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.Escape Then
Call Button1_Click(New Object, New EventArgs)
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Close()
End Sub
او بعمل طريقة وحدها بدون قيم
كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
If e.KeyCode = Keys.Escape Then
Call CloseMe()
End If
End Sub
Private Sub CloseMe()
Me.Close()
End Sub
او
PHP كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If e.KeyCode = Keys.Escape Then Button1.PerformClick() End If End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me.Close() End Sub