簡體   English   中英

如何將整數轉換為彩色或RGB

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM