PDA

View Full Version : سوال: رنگي كردن يك سطر از سطرهاي كمبو يا ليست باكس



sh2007
یک شنبه 31 مرداد 1389, 10:33 صبح
با سلام خدمت همه دوستان
دوستان يك سوال برام پيش اومده و اينه كه چطوري مي تونم توي كمبو باكس و يا ليست باكسي كه داراه آيتمهاي ذخيره شده هستند مثلا نام شهرهاي كشور توي اون قرار دارند براي جلب توجه كاربر بعضي رديفها رو به يك رنگ متمايز كنيم دقيقا مثل سامانه اعلام حساب خانوار كه حسابي را كه در هر بانك داشتي بصورت رنگي مشخص مي كرد توي وي بي دات نت چطوري اين مورد امكان داره
ممنون

mahdi1373
یک شنبه 31 مرداد 1389, 11:12 صبح
سلام، برای لیست باکس انجوریه:


Dim lst As ListViewItem
lst = ListBox1.Items.Add("")
lst.BackColor = Color.GreenYellow

ListBox1:نام لست باکس
Color.GreenYellow:رنگ مورد نظر

Mani_rf
یک شنبه 31 مرداد 1389, 11:48 صبح
سلام، برای لیست باکس انجوریه:


Dim lst As ListViewItem
lst = ListBox1.Items.Add("")
lst.BackColor = Color.GreenYellow

ListBox1:نام لست باکس
Color.GreenYellow:رنگ مورد نظر

شوخی می کنی؟

Saman_12
یک شنبه 31 مرداد 1389, 12:24 عصر
سلام.
با این کد میتونی یه عکس رو هر جای لیست باکس دلت خواست رسم کنی بهتره عکست کوچیک باشه (گفتم شاید کمک کرد.) :


Try
Do While sender = sender
Application.DoEvents()
Dim G As Graphics = ListBox1.CreateGraphics
G.DrawImage(System.Drawing.Image.FromFile("Your path"), New Point(1, 1))
Loop
Catch ex As Exception
End
End Try

جای Yourpath آدرس و اسم فایل رو بزار.

sh2007
یک شنبه 31 مرداد 1389, 12:31 عصر
سلام.
با این کد میتونی یه عکس رو هر جای لیست باکس دلت خواست رسم کنی بهتره عکست کوچیک باشه (گفتم شاید کمک کرد.) :


Try
Do While sender = sender
Application.DoEvents()
Dim G As Graphics = ListBox1.CreateGraphics
G.DrawImage(System.Drawing.Image.FromFile("Your path"), New Point(1, 1))
Loop
Catch ex As Exception
End
End Try

جای Yourpath آدرس و اسم فایل رو بزار.

دوستان از لطف همتون ممنون هستم ولي سوال من بصورت ساده اينه كه مثلا وي يك كمبو باكس 10 ايتم ذخيره شده نام شهر يا هرچيزي مي خوام توي انديس دو يا پنج بك كلر اون قسمت رنگ صورتي يا زرد باشه كسي از دوستان راحي داره يا نه ممنون

lahij.ir
یک شنبه 31 مرداد 1389, 13:54 عصر
با سلام خدمت همه دوستان
دوستان يك سوال برام پيش اومده و اينه كه چطوري مي تونم توي كمبو باكس و يا ليست باكسي كه داراه آيتمهاي ذخيره شده هستند مثلا نام شهرهاي كشور توي اون قرار دارند براي جلب توجه كاربر بعضي رديفها رو به يك رنگ متمايز كنيم دقيقا مثل سامانه اعلام حساب خانوار كه حسابي را كه در هر بانك داشتي بصورت رنگي مشخص مي كرد توي وي بي دات نت چطوري اين مورد امكان داره
ممنون
من تونستم یه همچین چیزی پیدا کنم ، یه نگاه بکن شاید با یکم دستکاری بتونی اون چیزی که میخوای و درست کنی :لبخند:

lahij.ir
یک شنبه 31 مرداد 1389, 14:59 عصر
اینم یه نمونه دیگه که باز شبیه همون بالایست :لبخند:

mo.esmp
یک شنبه 31 مرداد 1389, 15:29 عصر
پراپرتی DrawMode لیست باکس رو به OwnerDrawFixed تغییر بده و در رویداد DrawItem کدهای زیر رو قرار بده.

Dim fore As Color = e.ForeColor
If e.Index = 1 OrElse e.Index = 2 Then
Using bbr As New SolidBrush(Color.Red)
e.Graphics.FillRectangle(bbr, e.Bounds)
End Using
fore = Color.White
End If
Using fbr As New SolidBrush(fore)
e.Graphics.DrawString(listBox1.Items(e.Index).ToSt ring(), e.Font, fbr, e.Bounds, StringFormat.GenericDefault)
End Using
e.DrawFocusRectangle()

sh2007
یک شنبه 31 مرداد 1389, 17:28 عصر
پراپرتی DrawMode لیست باکس رو به OwnerDrawFixed تغییر بده و در رویداد DrawItem کدهای زیر رو قرار بده.

Dim fore As Color = e.ForeColor
If e.Index = 1 OrElse e.Index = 2 Then
Using bbr As New SolidBrush(Color.Red)
e.Graphics.FillRectangle(bbr, e.Bounds)
End Using
fore = Color.White
End If
Using fbr As New SolidBrush(fore)
e.Graphics.DrawString(listBox1.Items(e.Index).ToSt ring(), e.Font, fbr, e.Bounds, StringFormat.GenericDefault)
End Using
e.DrawFocusRectangle()

دوست من ممنون الان كامپيوترندارم ولي روال كدهامنطقي است اگه مشكلي داشتم تايپيك ميزنم.ممنون