在 Windows API 中有定義這幾個巨集:
函數 | 引數 | 說明 |
GetRValue | RGBColor | 傳入 RGB 顏色的長整數,傳回紅色長整數 |
GetGValue | RGBColor | 傳入 RGB 顏色的長整數,傳回綠色長整數 |
GetBValue | RGBColor | 傳入 RGB 顏色的長整數,傳回藍色長整數 |
不過巨集可不是 API 喔!所以 Windows API 內可沒有這個函數,因為這個定義在 C 語言中
函數:ColorHLSToRGB,傳入 RGB 顏色的長整數
引數 | 型態 | 說明 |
pwHue | Long | 色調值 |
pwLuminance | Long | 亮度值 |
pwSaturation | Long | 飽和值 |
範例:
tColor = ColorHLSToRGB(pwHue, pwLuminance, pwSaturation) ' 傳入 RGB 顏色的長整數
函數:ColorRGBToHLS
引數 | 型態 | 說明 |
clrRGB | RGBColor | 傳入 RGB 顏色的長整數 |
pwHue | Long | 傳回色調值 |
pwLuminance | Long | 傳回亮度值 |
pwSaturation | Long | 傳回飽和值 |
範例:
Dim pwHue As Long, pwLuminance As Long, pwSaturation As Long
ColorRGBToHLS QBColor(11), pwHue, pwLuminance, pwSaturation
Debug.Print pwHue, pwLuminance, pwSaturation