تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] تعطيل جميع الأدوات داخل GroupBox باستثناء واحدة
#1
Exclamation 
السلام عليكم

من اجل الاستعداد في تنفيذ اجزاء اخرى من المشروع الاساسي
تم تكليفي بعمل كود يقوم بالتالي:
توجد أداة GroupBox وفيها مجموعة أدوات
المطلوب تعطيل كل الأدوات التي بداخلها باستثناء تكست بوكس معين مع الليبل الخاص بها

قمت بعمل مشروع تجربه ولكن لم اتمكن من عملها بالشكل الصحيح

مشروع التجربة:
لدي GroupBox1 وفيه مجموعة من الأدوات وهي
Label1 مع TextBox1
Label2 مع TextBox2
Label3 مع TextBox3
Button1 لتعطيل كل الأدوات داخل GroupBox1 باستثناء Label2 وTextBox2 على سبيل المثال
Button2 لتفعيل كل الأدوات داخل GroupBox1

عند عمل الكود اتضح انه يعطل كل شيء حتى الفورم
صراحة اصابني بالارتباك وسأحرج من زملائي لو طلبوا مني وضع الكود قبل حل مشكلته

هذا هود الكود
كود :
Public Class Form1

   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
      DisableGroupBox
   End Sub

   Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
      EnableGroupBox
   End Sub

   Private Sub DisableGroupBox()
       For Each c As Control In GroupBox1.Controls
           If c IsNot TextBox2 And c IsNot Label2 Then
               Enabled = False
           End If
       Next
   End Sub

   Private Sub EnableGroupBox()
       For Each c As Control In GroupBox1.Controls
           Enabled = True
       Next
   End Sub

End Class


وشكرا لكم

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة: ابراهيم ايبو , baha , baha
#2
أرجو أن لا يكون رفعي للموضوع مخالفة

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة: ابراهيم ايبو
#3
وعليكم السلام ورحمة الله وبركاته

كل ماعليك هو إضافة حرف c قبل الخاصية ليتم تحديد أي كائن تريد تعطيله

كود :
 c.Enabled = False
           
الرد
تم الشكر بواسطة: سميـر , ابراهيم ايبو , asemshahen5
#4
السلام عليكم ورحمة الله وبركاته

هل تريد تعطيل يعني تصبح ReadOnly او Enable=false ام انك تريد تدمير العناصر? 
تدمير العناصر لايمكن اعادتها الا باعادة التشغيل او بكود جديد لانشائها 
اما Enable=false فيمكن تغيير قيمتها الى true وبالنسبة ل label 
فهي لاتحتاج الى تعظيل وتفعيل ارجو الايضاح ليصار الى كتابة الكود المناسب
الرد
#5
أشكرك صديقي baha

لقد لفت نظري لنقص في الكود وهو عدم وجود .c قبل كلمة Enabled
فعند إضافتها عمل الكود بالشكل المطلوب

أشكرك جزيل الشكر

الكود بعد التعديل
كود :
Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
     DisableGroupBox
  End Sub

  Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
     EnableGroupBox
  End Sub

  Private Sub DisableGroupBox()
      For Each c As Control In GroupBox1.Controls
          If c IsNot TextBox2 And c IsNot Label2 Then
              c.Enabled = False
          End If
      Next
  End Sub

  Private Sub EnableGroupBox()
      For Each c As Control In GroupBox1.Controls
          c.Enabled = True
      Next
  End Sub

End Class



أشكرك صديقي ابراهيم ايبو
كان الطلب في التفعيل Enabled فقط وتم عمل المطلوب بإضافة .c قبل كلمة Enabeld في الكود

أشكرك جزيل الشكر على المتابعة المعهودة منك

اصدقائي حسب ترتيب ظهورهم في مواضيعي:
baha
ابراهيم ايبو
سعود
Rabeea Qbaha
اسامه الهرماوي
الرد
تم الشكر بواسطة: baha , ابراهيم ايبو , asemshahen5
#6
(23-08-19, 05:57 PM)ابراهيم ايبو كتب :
السلام عليكم ورحمة الله وبركاته

هل تريد تعطيل يعني تصبح ReadOnly او Enable=false ام انك تريد تدمير العناصر? 
تدمير العناصر لايمكن اعادتها الا باعادة التشغيل او بكود جديد لانشائها 
اما Enable=false فيمكن تغيير قيمتها الى true وبالنسبة ل label 
فهي لاتحتاج الى تعظيل وتفعيل ارجو الايضاح ليصار الى كتابة الكود المناسب

هل يمكن تدمير أي كائن كمربع النص مثلاً؟
أي استخدام نفس الإسم بعد التدمير لكائن آخر
الرد
تم الشكر بواسطة: سميـر
#7
السلام عليكم اخي baha
نعم يمكن تدمير أي عنصر ثم انشاء عنصر جديد يحمل نفس الاسم ولكن يفضل اسم أخر
اليك الاكواد الاول تدمير والثاني انشاء طبعا بالنسبة للقياس والتموضع ضع نفس القيم للعنصر المدمر استبدل ماكتبته من تموضع 

كود :
' تدمير عنصر
   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
     
       TextBox1.Dispose()
   End Sub
   ' انشاء عنصر
   Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
   
       Dim tex As New TextBox()

       GroupBox1.Controls.Add(tex)
       tex.Name = "TextBox1"
       tex.Text = "hello"
       tex.Location = New Point(100, 40)
   End Sub
الرد
تم الشكر بواسطة: baha , عبد العزيز البسكري , asemshahen5 , سميـر
#8
وعليكم السلام ورحمة الله وبركاته

مشكور أخي  [b]ابراهيم ايبو[/b] على هذه المعلومة







تمنياتي لك وللجميع التوفيق
الرد
#9
الحمد لله والشكر لله 
ولكما اخوي Baha وسمير
الرد
تم الشكر بواسطة: baha , سميـر


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال بخصوص عدم كتابة الاحرف في التكست بوكس باستثناء الفاصلة والباك سبيس momani33 4 93 06-12-19, 08:00 PM
آخر رد: momani33
  [VB.NET] تضمين قاعدة البيانات داخل مجلد العمل Mustafa Shaker 14 358 27-11-19, 10:18 AM
آخر رد: asemshahen5
  كيف أفتح كل صورة من رابط داخل البيكتر بوكس bidaya 8 235 18-11-19, 09:21 PM
آخر رد: 3booody
  [سؤال] ما هي طريقة وضع ملفات ال dll الخاصة بالبرنامج داخل مجلد princelovelorn 4 201 18-11-19, 08:45 AM
آخر رد: princelovelorn
  ممكن كود استدعاء اى برنامج داخل الفورم الرئيسيه sherf 2 199 16-11-19, 01:13 AM
آخر رد: sherf
Exclamation [VB.NET] اريد كود يقوم بنسخ اي نص موجود في الموقع التي يتم عرضة في الويب بروزر > التفاصيل داخل SnTnt 2 123 15-11-19, 06:33 PM
آخر رد: SnTnt
  [VB.NET] تشفير كود داخل الفورم ابو روضة 15 366 14-11-19, 11:44 PM
آخر رد: ابو روضة
  [VB.NET] البحث داخل listview farfour 8 206 12-11-19, 10:24 PM
آخر رد: farfour
  ماهي طريقة نقل جميع محتويات كومبوبوكس على خلية واحدة معينة في الداتاقريد فيو جيولوجي مبتدئ 3 142 12-11-19, 10:49 AM
آخر رد: علي نوري
  تغير الخط لجميع الأدوات اسامه الهرماوي 4 128 08-11-19, 03:09 AM
آخر رد: اسامه الهرماوي

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم