RGB値の分解
ここに載せてあるソースコードは、参考のために載せてあります
サンプルコードは、一番下にLZHとしてあります
Option Explicit 'RGB値を分解します '赤、緑、青それぞれの色に分解します 'GetRGB関数に使うRGB構造体(ユーザー定義型)です Private Type RGBType Red As Integer Green As Integer Blue As Integer End Type 'RGB値を分解する関数 Private Function GetRGB(ByVal lngColor As Long) As RGBType Dim iRgb As RGBType 'それぞれのRGB値を取得します With iRgb .Red = lngColor Mod 256 .Green = Int((lngColor Mod 65536) / 256) .Blue = Int(lngColor / 65536) End With '関数へ戻り値として返します GetRGB = iRgb End Function 'Picture1上でマウスが動いた Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim rc As RGBType 'GetRGB関数の引数にPointメソッドで取得した色を使い、 'rcに分解したRGB値を代入する rc = GetRGB(Picture1.Point(X, Y)) '赤、緑、青の色をそれぞれ表示する Caption = "RGB[" & rc.Red & "," & rc.Green & "," & rc.Blue & "]" End Sub |