Re[2]: 256 цветов, палитра и функции рисования
От: ksi Казахстан  
Дата: 17.03.04 10:43
Оценка:
Здравствуйте, Michael Chelnokov, Вы писали:

MC>Здравствуйте, ksi, Вы писали:


ksi>>Помогите. Для режима 256 цветов, при загрузке новой системной палитры при активации приложения, функции рисования типа Ellipse, LineTo не видят загруженных цветов, а используют 16 стандартных, тоже делает и функция GetNearestColor. Хотя функция GetSystemPaletteEntries возвращает загруженную палитру правильно.Возможно есть какая-нибудь фишка в винде поэтому поводу?


MC>По поводу палитр там много разных фишек было. К сожалению, давно уже с эти не сталкивался, поэтому сходу сказать не могу. Можете привести куски кода с CreatePalette/AnimatePalette/RealizePalette и т.п.?


Проблема в том, что палитра устанавливается функцией RealizePalette, а при создании Brush с использованием цвета, который точно есть в палитре, и макроса PaletteRGB например

br:CBrush;
br.CreateSolidBrush(PALETTERGB(r,g,b));

получается цвет разбитый на 16 стандартных цветов, а не чистый цвет из палитры.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.