макрос RGB

Данный макрос получает из трех цветов - красный, зеленый, синий код цвета COLORREF, который в последствии может использоваться при программировании цвета для графических примитивов.

Из этих трех составляющих можно получить любой цвет.

При использовании палитры RGB цвета могут изменять значения в диапазоне 0-255.

COLORREF RGB(
BYTE bRed, // красный
BYTE bGreen, // зеленый
BYTE bBlue // синий
);

Вы наверно догадались что, COLORREF это просто число.

А вот так он реализован. Как видите числа помещаются со смешением 0,8,16.

#define RGB(r, g ,b)  ((DWORD) (((BYTE) (r) | ((WORD) (g) << 8)) | 
(((DWORD) (BYTE) (b)) << 16)))

1999 год. Действие происходит где-то в районе OnPaint(), красные опять наступают.

CPaintDC dc(this);
CPen pen(PS_SOLID,3,RGB(200,0,0)); // Настроили перо как красное(почти)
dc.SelectObject(pen); // выбрали перо
dc.LineTo(600,105);
dc.MoveTo(300,300); // провели красную линию