Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
BarLeft, BarTop - координаты левого верхнего угла
BarWidth, BarHeight - размеры прямоугольника
PixelArray - массив 4-байтовых цветов точек в формате $00BBGGRR (белый = $FFFFFF), количество точек = BarHeight*BarWidth
Этот массив нужно заполнить нужной картинкой (если рисуешь квадрат малевича, то вообще ничего заполнять не надо - глобальные переменные уже проинициализированы нулями, будет всё чёрное)
Процедура рисования прямоугольника
var
BitInfo: TBitMapInfo;
...
with BitInfo.bmiHeader do begin
biSize := $28;
biWidth := BarWidth;
biHeight := BarHeight;
biPlanes := 1;
biBitCount := 32;
biCompression := BI_RGB;
biSizeImage := 4 * BarWidth * BarHeight;
biXPelsPerMeter := 0;
biYPelsPerMeter := 0;
biClrUsed := 0;
biClrImportant := 0;
end;
if SetDIBitsToDevice(HDC, BarLeft, BarTop, BarWidth, BarHeight, 0,
0, 0, BarHeight, @PixelArray,
BitInfo, DIB_RGB_COLORS) = 0 then
DisplayError('Ошибка, нах');
Составить ответ | Вернуться на конференцию
Ответы