منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : (تم الحل) تفعيل زر esc في جميع خصائص الفورم لمسح قيمة متغير
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
بسم الله الرحمن الرحيم

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

كيف الحال أخواني اعضاء و زوار و مرتادي المنتدى

عندي سؤال وهو كالتالي :-

كيف يتم حذف قيمة متغير عند الضغط على زر ESC

ابقيه يكون في اي حذث في الفورم

يعني ما يكون بس في حدث text1.text

او في حدث Load Form

أبقاه يكون في اي حدث

بمجرد الضغط على Esc يحذف قيمة المتغير

ارجو ان تكون الفكرة واضحه

وارجو ان احصل الاجابه هنا
و عليكم السلام و رحمة الله و بركاته،
كود :
Public Class Form1
    Dim S As String = "Some string!"

    Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        If e.KeyCode = Keys.Escape Then
            MsgBox("Before: " & S)
            S = Nothing
            MsgBox("After: " & S)
        End If
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.KeyPreview = True
    End Sub
End Class
Aly El-Haddad كتب :و عليكم السلام و رحمة الله و بركاته،
كود :
Public Class Form1
    Dim S As String = "Some string!"

    Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
        If e.KeyCode = Keys.Escape Then
            MsgBox("Before: " & S)
            S = Nothing
            MsgBox("After: " & S)
        End If
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.KeyPreview = True
    End Sub
End Class


شكراًَ الف شكر عزيزي

الكود تمام التمام

لكن ممكن شرح الكود

لو ما فيه كلافه
بو عبدالله كتب :شكراًَ الف شكر عزيزي

الكود تمام التمام

لكن ممكن شرح الكود

لو ما فيه كلافه

على الرحب أخي الكريم،
كود :
Dim S As String = "Some string!"
أعتبرت أن المتغير الذي تريد حذف قيمته أسمه S و نوعه String و قيمته "Some string!"
في الحدث Form_Load و الذي ينطلق قبل ظهور الـForm وضعت الكود Me.KeyPreview = True حيث أن عند تغيير قيمة هذا الخاصية في الـForm إلى True.. تستجيب الأحداث KeyDown و KeyPress و KeyUp للفورم دون أحتياج أستخدامها في الـTextBox
في الحدث KeyUp للفورم و الذي ينطلق عند رفع الأصبع من على الزر
وضعت الكود If e.KeyCode = Keys.Escape Then ... End If و الذي يتأكد من أن الزر الذي تم الضغط عليه هو Escape ثم إظهار رسالة بالمتغير S قبل حذف قيمته ثم حذف قيمته بـS = Nothing ثم إظهار رسالة للتأكد من أن قيمته قد تم حذفها
يعطيك ألف ألف عافيه عزيزي

وصلت الفكرة و تم التطبيق بنجاح

و أستفدت منها في امور ثانيه

شكراًَ مره اخرى
كذا او بلاش الله يحفضك اخي Aly El-Haddad