تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[نقاش] سؤال
#1
السلام عليكم ورحمة الله وبركاته

طبعاً بعد ما اتعب من البحث في النت ولجهلي لأمور كثيرة فإني اضطر بالنهاية لعرض السؤال هنا :

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

بحيث يتم تمييز أسماء عن أسماء أخرى بشروط معينة من خلال تلوينها بألوان عدة.
الرد }}}
تم الشكر بواسطة:
#2
(08-10-20, 01:21 PM)MetoDas كتب : السلام عليكم ورحمة الله وبركاته

طبعاً بعد ما اتعب من البحث في النت ولجهلي لأمور كثيرة فإني اضطر بالنهاية لعرض السؤال هنا :

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

بحيث يتم تمييز أسماء عن أسماء أخرى بشروط معينة من خلال تلوينها بألوان عدة.

أهلاً بك ... Smile ...  الكود هو :

 Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button.Click

        If ListBox1.SelectedItem = "Ahmed" Then
' لون الكلمة        
     ListBox1.ForeColor = Color.Yellow
' لون الخلفية
            ListBox1.BackColor = Color.Green
        End If

    End Sub
الرد }}}
تم الشكر بواسطة: اسامه الهرماوي
#3
تلوين العنصر إذا احتوى على كلمة معينة، وليس بالضبط مساوي لها.
وأضيف لك شرطًا إضافيًا، مثل:

إذا احتوى الاسم على "محمد" → أخضر

إذا احتوى على "أحمد" → أحمر

إذا احتوى على "سارة" → أزرق

وإلا → أسود (الافتراضي)


الكود

PHP كود :
Private Sub Form1_Load(sender As ObjectAs EventArgsHandles MyBase.Load
    ListBox1
.DrawMode DrawMode.OwnerDrawFixed

    
' إضافة بعض الأسماء إلى الليست بوكس
    ListBox1.Items.Add("محمد علي")
    ListBox1.Items.Add("أحمد سالم")
    ListBox1.Items.Add("علي مصطفى")
    ListBox1.Items.Add("سارة حسن")
    ListBox1.Items.Add("محمد عبد الله")
End Sub

Private Sub ListBox1_DrawItem(sender As Object, e As DrawItemEventArgs) Handles ListBox1.DrawItem
    If e.Index < 0 Then Return

    Dim itemText As String = ListBox1.Items(e.Index).ToString()
    Dim brush As Brush = Brushes.Black ' 
اللون الافتراضي

    
' الشروط المعدلة - حسب احتواء الاسم على كلمات معينة
    If itemText.Contains("محمد") Then
        brush = Brushes.Green
    ElseIf itemText.Contains("أحمد") Then
        brush = Brushes.Red
    ElseIf itemText.Contains("سارة") Then
        brush = Brushes.Blue
    End If

    ' 
رسم الخلفية
    e
.DrawBackground()

 
   ' رسم النص باللون المحدد
    e.Graphics.DrawString(itemText, e.Font, brush, e.Bounds)

    ' 
رسم الإطار حول العنصر إذا كان محدد
    e
.DrawFocusRectangle()
End Sub 
الرد }}}
تم الشكر بواسطة: أبو خالد الشكري , princelovelorn


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  سؤال عن الاسمبلي و النيم سبيس justforit 0 99 07-12-25, 12:28 AM
آخر رد: justforit
  فائدة بخصوص التعامل مع علامات التنصيص مع {سؤال} justforit 4 254 02-11-25, 11:19 PM
آخر رد: justforit
  [سؤال] سؤال ترددت قبل نشرة:طابعة الباركود لماذا تطبع أكثر من ليبل فارغ قبل السليم dr.programming 1 505 20-04-25, 09:26 PM
آخر رد: Kamil
  سؤال لو سمحتم احبتى فى الله خالد كامل1 4 792 09-02-25, 12:02 AM
آخر رد: princelovelorn
  سؤال واستفسار خالد كامل1 1 398 04-02-25, 09:31 PM
آخر رد: aliday03
  سؤال فى تقرير كريستال خالد كامل1 0 391 04-02-25, 05:50 AM
آخر رد: خالد كامل1
Question [VB.NET] هناك سؤال يهم كل مبرمج الماذا برنامجك يظهر على بعض الشاشات اكثر دقه بشكل مصغر ومشوه Microformt 0 444 01-02-25, 03:48 PM
آخر رد: Microformt
  [سؤال] سؤال في الكونسول justforit 1 356 21-12-24, 02:57 PM
آخر رد: aljzazy
  سؤال عن طريقة التعامل مع الفاصلة العشرية المتألق9 2 513 28-09-24, 04:45 PM
آخر رد: المتألق9
  سؤال بخصوص القريد DOX.1 6 680 31-08-24, 06:24 PM
آخر رد: justforit

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


يقوم بقرائة الموضوع: