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

نسخة كاملة : كيف نمسح محتوى textbox ؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم و رحمة الله
اليوم و بإذن الله سنتعرف على كيفية مسح محتوى التاكست بوكس اولا قم باضافة تاكست بوكس للفورم و زر بوتون و في حدث الكليك الخاص بالزر بوتون أكتب الكود التالي
PHP كود :
TextBox1.Text="" 
أو الكود التالي
PHP كود :
TextBox1.Clear() 
اوك الآن اعمل run للمثال و أكتب أي شيء في تاكست بوكس ستلاحظ أن محتوى التاكست بوكس اصبح فارغ حتى الآن كل شيء جيد و تمام
طيب ماذا لو أردنا مسح أكثر من تاكست بوكس في نفس الوقت لنفترض أنه عندنا 20 تاكست بوكس أظن أن الكود سيكون طويل و متعب على الشكل التالي
PHP كود :
TextBox1.Clear() 
TextBox2.Clear() 
.
.
إلى غاية
TextBox20
.Clear() 

الآن نقوم بإضافة 30 تاكست بوكس للفورم و نكتب فيهم ما نشاء ثم نضيف زر للفورم أنت حر في طريقة إضافة التاكست بوكس إما عن طريق التول بوكس أو عن طريق الكود شحصيا افضل طريقة الكود لأنها أسهل و مريحة كما يلي
في حدث اللاود للفورم اضف ما يلي:
PHP كود :
' هنا إنشاء 30 تاكست بوكس 15 على اليسار و بجنبهم 15 أخرى
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Dim i As Integer

        
        For i = 0 To 300 - 1 Step 20
            Dim txt As New TextBox ' 
txt من نوع textbox
            txt
.Location = New Point(0i' موقع txt على الفورم بدلالة 0 على اليسار و "i" على اليمين
            txt.Size = New Size(100, 20) ' 
حجم txt
            txt
.Text "Mohammed moh" 'هنا اكتب ما تشاء و سيتم إظهاره في جميع التاكست بوكس
                txt.Parent = Me
        Next i

        For i = 0 To 300 - 1 Step 20
            Dim txt As New TextBox
            txt.Location = New Point(100, i)
            txt.Size = New Size(100, 20)
            txt.Text = "Mohammed moh"
            txt.Parent = Me
        Next i

    End Sub 
بعد تشغيل التطبيق سيظهر على الشكل الآتي:

كما هو موضح في الصورة عملية إنشاء 30 تاكست بوكس و ملأها لن تحتاج سوى 25 ثا أو 30 فقط على عكس الطريقة اليدويةBig Grin
الآن و ما يهمنا في هذا الموضوع و هو كيفية مسج محتوى جميع التاكست بوكس الموجود على الفورم في آن واحد في منطقة التصريحات العامة أكتب الكود التالي :
PHP كود :
Public Class Form1
    
' هذا هو الجزء المسؤول عن مسح محتوى التاكست بوكس
    ' 
وهذا طبعا إن كان عندك فورم واحد أما إذا كان عندك أكثر
    
' من فورم فيتوجب عليك إضافة موديل و كتابة هذا الجزء عليه
    ' 
بـ كلمة  "Form" "Form1" و استبدال كلمة 
    
Public Sub cleartxt(frm As Form1)

        For 
Each x In frm.Controls
            
If TypeOf x Is TextBox Then
                x
.Clear()
            
End If
        
Next
    End Sub 
الآن طريقة استعمال الحذف و هي كما يلي في حدث الكليك للزر أكتب العبارة التالية
PHP كود :
' طريقة استدعاء عملية المسح الي كتبناها فوق
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Call cleartxt(Me)
    End Sub 
الآن قم بتشغيل التطبيق و اضغط على زر البوتون و بالتالي سوف يقوم بمسح جميع النصوص الموجود في التاكست بوكس
ملاحظة : لو قمت بإضافة تاكست بوكس آخر يدوي سيقوم الزر بمسح محتواه ايضا و للتحكم في التاكست بوكس التي نريد مسحه بدل "for each" نستخدم "for" + جملة "if" و أمور أخرى.
إلى هنا أكون قد انتهيت من موضوعي البسيط أتمنى أن يكون مفيد إن شاء الله
بالتوفيق للجميع
جزاك الله خيرا
فعلا شئ مميز
وشرح جميل
عمل رائع ...
مشكور ...
عمل رائع
تسلم على المجهود
جزاك الله خيرا اخي
شرح ممتاز