如何将整数转换为颜色或RGB

how to covert uinteger to color or RGB

我想用某种颜色为矩形着色,其中的颜色值为 uinteger。我可以这样做吗?或者如何将 vb.net 中的值 uinteger 更改为颜色或 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(255,128,128)

您可以为此使用 ColorTranslator class:

    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))