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

نسخة كاملة : تغير لون مربع النص
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
ما هي المشكله في عدم الاستطاعه في تغير لون مربعات النص للعلم استخدمت الكود
بالاخص إذا كان في Panel 
كود :
      For Each ctrl As Control In Me.Controls
           If TypeOf ctrl Is TextBox Then
               ctrl.BackColor = My.Settings.color4
               ctrl.ForeColor = My.Settings.color9
           End If
       Next


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

يمكنك انشاء function خاصة بالبحث في أدوات الفورم إذا كانت تكست بوكس فيغير الخلفية واذا كانت بانل او قروب بوكس فيبحث داخلها ثم يغير اللون اذا وجد ادوات تريد تغييرها

كود :
       For Each ctrl As Control In Panel1.Controls
           If TypeOf ctrl Is TextBox Then
               ctrl.BackColor = Color.Black
               ctrl.ForeColor = Color.White
           End If
       Next
(06-12-19, 04:29 PM)محمد كريّم كتب : [ -> ]لأنك بتعدل خلفية الأدوات اللي في الفورم مباشرة
ولكن التكست بوكس المطلوبة موجودة في بانل
لهذا يجب البحث داخل أدوات البانل أيضا

يمكنك انشاء function خاصة بالبحث في أدوات الفورم إذا كانت تكست بوكس فيغير الخلفية واذا كانت بانل او قروب بوكس فيبحث داخلها ثم يغير اللون اذا وجد ادوات تريد تغييرها

كود :
       For Each ctrl As Control In Panel1.Controls
           If TypeOf ctrl Is TextBox Then
               ctrl.BackColor = Color.Black
               ctrl.ForeColor = Color.White
           End If
       Next


شكرا جزيلا لك اخي العزيز محمد كريّم
ما هو Function للبحث داخل كامل الفورم لان يوجد لدي اكثر من panel
(06-12-19, 05:28 PM)alshandodi كتب : [ -> ]شكرا جزيلا لك اخي العزيز محمد كريّم
ما هو Function للبحث داخل كامل الفورم لان يوجد لدي اكثر من panel



آسف هو Sub لا يرجع قيمة وليس Function

كود :
   
    Private Sub StyleControls(ParentCtrl As Control)

        For Each ctrl As Control In ParentCtrl.Controls

            If TypeOf ctrl Is TextBox Then
                ctrl.BackColor = Color.Black
                ctrl.ForeColor = Color.White

            ElseIf TypeOf ctrl Is Button Then
                ctrl.BackColor = Color.Black
                ctrl.ForeColor = Color.White

            ElseIf TypeOf ctrl Is ComboBox Then
                ctrl.BackColor = Color.Black
                ctrl.ForeColor = Color.White

            ElseIf TypeOf ctrl Is Panel Then
                StyleControls(ctrl)

            ElseIf TypeOf ctrl Is GroupBox Then
                StyleControls(ctrl)

            End If

        Next
    End Sub



طريقة الاستخدام :


كود :
       StyleControls(Me) 'لكل أدوات الفورم
       StyleControls(Panel1) 'لأدوات بانل معين فقط
       StyleControls(GroupBox1) 'لأدوات قروب بوكس معين فقط
لك مني خالص الشكر والتقدير أخي محمد كريم
اختصار جديد للكود :

PHP كود :
   Public Sub StyleControls(ParentCtrl As Control)
 
       For Each ctrl As Control In ParentCtrl.Controls
            If TypeOf ctrl Is TextBox Then
                ctrl
.BackColor Color.Black
                ctrl
.ForeColor Color.White
            ElseIf TypeOf ctrl Is Button Then
                ctrl
.BackColor Color.Black
                ctrl
.ForeColor Color.White
            ElseIf TypeOf ctrl Is ComboBox Then
                ctrl
.BackColor Color.Black
                ctrl
.ForeColor Color.White
            ElseIf ctrl
.HasChildren True Then
                StyleControls
(ctrl)
 
           End If
 
       Next
    End Sub 

نفس طريقة الاستخدام .

PHP كود :
      StyleControls(Me''لكل أدوات الفورم
       StyleControls
(Panel1''لأدوات بانل معين فقط
       StyleControls
(GroupBox1''لأدوات قروب بوكس معين فقط 
إضافة جميلة أخي عاصم شكرا لك

أول مرة أتعرف على الـ property اللي اسمها HasChildren


إضافتك تضيف احتمالية رغبة المستخدم في استثناء بعض الأدوات داخل الفورم
لهذا يمكن اضافة باراميتر ثاني للميثود يقرر فيه تضمينها او استثنائها


كود :
   Private Sub StyleControls(ParentCtrl As Control, Optional IncludeChildsWithChilds As Boolean = True)

       For Each ctrl As Control In ParentCtrl.Controls

           If TypeOf ctrl Is TextBox Then
               ctrl.BackColor = Color.Black
               ctrl.ForeColor = Color.White

           ElseIf TypeOf ctrl Is Button Then
               ctrl.BackColor = Color.Black
               ctrl.ForeColor = Color.White

           ElseIf TypeOf ctrl Is ComboBox Then
               ctrl.BackColor = Color.Black
               ctrl.ForeColor = Color.White

           ElseIf ctrl.HasChildren = True And IncludeChildsWithChilds Then
               StyleControls(ctrl)

           End If

       Next
   End Sub



الاستخدام :


كود :
       StyleControls(Me) 'للفورم وكل الأدوات الحاوية بداخله
       StyleControls(Me, False) 'للأدوات على الفورم فقط مع استثناء الأدوات الحاوية بداخله

       StyleControls(Panel1) 'لأدوات بانل معين فقط
       StyleControls(GroupBox1) 'لأدوات قروب بوكس معين