Extract RGB components from a Long value

You can extract RGB values out of a 32-bit color value by using the integer division and the MOD operators, but there is a much more effective way, based on the LSet. You can convert from a long to rgb bytes and vice versa with the following code:

Private Type RGBWrapper   Red As Byte   Green As Byte   Blue As Byte   Alpha As ByteEnd TypePrivate Type LONGWrapper   Value As LongEnd TypePrivate Sub Form_Load()   Dim Color As LONGWrapper   Dim Colors As RGBWrapper   Color.Value = RGB(255, 123, 55)   LSet Colors = Color 'do the actual conversion   MsgBox Colors.Red   MsgBox Colors.Green   MsgBox Colors.BlueEnd Sub

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: