Maks150988
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Frodo_Torbins А, ну это тепрь понятно. Сделал так: Код: var lpBits: Array [0..MAX_HEIGTH-1, 0..MAX_WIDTH-1] of TRGBQuad; procedure SetMemDCPixel(X, Y: Integer); begin lpBits[Y, X].rgbBlue := 0; lpBits[Y, X].rgbGreen := 0; lpBits[Y, X].rgbRed := 0; lpBits[Y, X].rgbReserved := 0; end; begin with bmi.bmiHeader do begin biSize := SizeOf(bmi.bmiHeader); biWidth := MAX_WIDTH; biHeight := -MAX_HEIGTH; biPlanes := 1; biBitCount := 32; biCompression := BI_RGB; end; GetDIBits(pcp.hdcMem, pcp.hbmMem, 0, MAX_HEIGTH, @lpBits, bmi, DIB_RGB_COLORS); SetMemDCPixel(0, 0); SetDIBits(pcp.hdcMem, pcp.hbmMem, 0, MAX_HEIGTH, @lpBits, bmi, DIB_RGB_COLORS); end; | По крайней мере теперь SetMemDCPixel должен работать куда быстрее системного SetPixel в циклах. |