Здравствуйте, Dimonka, Вы писали:
D>У меня время от времени появляется дикое желание подменить стандартные цвета clBtnFace, clBtnShadow и т.д. на собственные. Т.е. скопом задавать цветовую схему. На сколько я понял все эти цвета вяжутся на ColorToRGB, а дальше на GetSysColor. Можно ли где-нибудь малой кровью подвязаться и возвращать свои значения для стандартных цветов?
Может SetSysColors попробовать? Вот пример из MSDN:
// Window elements to change.
int aiElements[3] = {COLOR_ACTIVEBORDER,
COLOR_ACTIVECAPTION,
COLOR_WINDOW};
// Array of RGB values.
DWORD aColors[3];
// Define the new colors.
aColors[0] = RGB(0x80, 0x00, 0x80); // dark purple
aColors[1] = RGB(0x00, 0x80, 0x80); // dark cyan
aColors[2] = RGB(0xC0, 0xC0, 0xC0); // light gray
// Set the window elements in aiElements to the colors
// specified in aColors.
SetSysColors(3, aiElements, aColors);