معالجة إدخالات مستخدم
يصف هذا الموضوع الرئيسية لوحة المفاتيح والماوس الأحداث توفير بواسطة System.Windows.Forms.Control. عند معالجة حدث ما، عنصر تحكم يجب تجاوز الكتاب الأسلوب المحمية OnEventName بدلاً من إرفاق مفوض للحدث. لمراجعة الأحداث، راجع رفع أحداث من مكون.
ملاحظة
إذا كان هناك هو لا توجد بيانات المقترن بحدث، مثيلاً ل فئة Base EventArgsهو تمرير كوسيطة OnEventName الطريقة.
أحداث لوحة المفاتيح
أحداث لوحة المفاتيح عام التي يمكن معالجة عنصر التحكم الخاص بك هي KeyDown، KeyPress، و KeyUp.
اسم حدث |
أسلوب لتجاوز |
وصف حدث |
---|---|---|
KeyDown |
void OnKeyDown(KeyEventArgs) |
Raهوed فقط عند المفتاح هو مضغوطاً مبدئياً. |
KeyPress |
void OnKeyPress (KeyPressEventArgs) |
Raهوed كل مرة تقوم المفتاح هو الضغط. إذا كان المفتاح هو احتجازها، KeyPressحدث هو raهوed معدل تكرار المعرفة من قبل النظام التشغيل. |
KeyUp |
void OnKeyUp(KeyEventArgs) |
مرفوع عندما يتم تحرير المفتاح. |
ملاحظة
معالجة إدخال من لوحة المفاتيح هو شكل ملحوظ أكثر تعقيداً من تجاوز الأحداث الموجودة في الجدول السابق و هو خارج النطاق من القيم بالموضع هو الموضوع. لمزيد من المعلومات، راجع إدخال مستخدم في Windows Forms.
أحداث ماوس
The mouse events that your عنصر تحكم can handle areMouseDown,MouseEnter,MouseHover,MouseLeave,MouseMove, andMouseUp.
اسم حدث |
أسلوب لتجاوز |
وصف حدث |
---|---|---|
MouseDown |
void OnMouseDown(MouseEventArgs) |
Raهوed عند بزر ماوس هو الضغط أثناء المؤشر هو فوق عنصر التحكم. |
MouseEnter |
void OnMouseEnter(EventArgs) |
مرفوع عند المؤشر أولاً بإدخال المنطقة عنصر تحكم. |
MouseHover |
void OnMouseHover(EventArgs) |
مرفوع عند تمرير المؤشر فوق عنصر تحكم. |
MouseLeave |
void OnMouseLeave(EventArgs) |
مرفوع عند المؤشر يترك المنطقة عنصر تحكم. |
MouseMove |
void OnMouseMove(MouseEventArgs) |
مرفوع عند تحريك المؤشر في المنطقة عنصر تحكم. |
MouseUp |
void OnMouseUp(MouseEventArgs) |
مرفوع عند تحرير زر ماوس أثناء وجود المؤشر على عنصر تحكم أو المؤشر يترك المنطقة عنصر تحكم. |
يلي تعليمات برمجية الجزء يظهر مثال عن تجاوز MouseDownحدث.
Protected Overrides Sub OnMouseDown(ByVal e As MouseEventArgs)
MyBase.OnMouseDown(e)
If Not (myAllowUserEdit) Then
Return
End If
Capture = True
dragging = True
SetDragValue(New Point(e.X, e.Y))
End Sub
protected override void OnMouseDown(MouseEventArgs e) {
base.OnMouseDown(e);
if (!allowUserEdit) {
return;
}
Capture = true;
dragging = true;
SetDragValue(new Point(e.X, e.Y));
}
يلي تعليمات برمجية الجزء يظهر مثال عن تجاوز MouseMoveحدث.
Protected Overrides Sub OnMouseMove(ByVal e As MouseEventArgs)
MyBase.OnMouseMove(e)
If (Not myAllowUserEdit Or Not dragging) Then
Return
End If
SetDragValue(New Point(e.X, e.Y))
End Sub
protected override void OnMouseMove(MouseEventArgs e) {
base.OnMouseMove(e);
if (!allowUserEdit || !dragging) {
return;
}
SetDragValue(new Point(e.X, e.Y));
}
يلي تعليمات برمجية الجزء يظهر مثال عن تجاوز MouseUpحدث.
Protected Overrides Sub OnMouseUp(ByVal e As MouseEventArgs)
MyBase.OnMouseUp(e)
If (Not myAllowUserEdit Or Not dragging) Then
Return
End If
Capture = False
dragging = False
Value = dragValue
OnValueChanged(EventArgs.Empty)
End Sub
protected override void OnMouseUp(MouseEventArgs e) {
base.OnMouseUp(e);
if (!allowUserEdit || !dragging) {
return;
}
Capture = false;
dragging = false;
value = dragValue;
OnValueChanged(EventArgs.Empty);
}
للتعليمات البرمجية المصدر الكامل FlashTrackBarنموذج، راجع كيفية القيام بما يلي: إنشاء عنصر تحكم Windows Forms الذي يعرض التقدم.
راجع أيضًا:
المبادئ
الأحداث في عناصر التحكم Windows Forms
تعريف أحداث في نماذج Windows عناصر التحكم