[英]how to covert uinteger to color or RGB
我想用某種顏色為矩形着色,其中顏色值值得uinteger。 我可以這樣做嗎? 或如何在vb.net中將值uinteger更改為color或Rgb? 我使用4.5 .net框架。 請幫助我,謝謝...
For i As Integer = 0 To sf.Categories.Count - 1
Dim category As MapWinGIS.ShapefileCategory = sf.Categories.Item(i)
Dim icolor As UInteger = scheme.GraduatedColor((i + 1) / sf.Categories.Count)
'MsgBox(icolor)
Panel1.BackColor = Color.FromArgb(icolor) 'eror
Next
例如:我有16744576,那么我在Google RGB中搜索的RGB值為rgb(255,128,128)
您可以為此使用ColorTranslator類:
Dim oleColor As Integer = 16744576
' Translate oleColor to a GDI+ Color structure.
Dim myColor As Color = ColorTranslator.FromOle(oleColor)
' Confirm the RGB values
Debug.WriteLine(myColor.ToString()) ' Color [A=255, R=128, G=128, B=255]
該值是RGB值。 您可以通過添加alpha通道值255(十六進制為FF)將其轉換為ARGB值,然后轉換為顏色:
Panel1.BackColor = Color.FromArgb(icolor Or &HFF000000)
您也可以將數字直接轉換為顏色(將RGB值當作ARGB值進行處理),但是其alpha值為零,因此將是透明的。 然后,您可以根據該顏色創建具有特定alpha值的顏色:
Panel1.BackColor = Color.FromArgb(255, Color.FromArgb(icolor))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.