F
forfor
Unregistered / Unconfirmed
GUEST, unregistred user!
用的大恒CG300图像卡。
Bmp=TBitmap.Create;
VideoDc := GetDc(VideoPanel.Handle);
CGDataTransform(pBuffer , LineAddr ,OUTPUT_WINDOW_WIDTH, OUTPUT_WINDOW_HEIGHT,
16, True);
SetStretchBltMode(Bmp.Canvas.Handle, COLORONCOLOR);
SetDIBitsToDevice(Bmp.Canvas.Handle, 0, 0, Bmp.Width, Bmp.Height,
0, 0, 0, pBMIInfo^.bmiHeader.biHeight,
pBuffer, pBMIInfo^, DIB_RGB_COLORS);
接下来的程序如果我用以下,则可正常显示:
StretchDIBits(VideoDC, 0, 0, VideoPanel.Width, VideoPanel.Height,
0, 0, pBMIInfo^.bmiHeader.biWidth, pBMIInfo^.bmiHeader.biHeight,
pBuffer, pBMIInfo^, DIB_RGB_COLORS, SRCCOPY);
而如果我用以下,则画面不断闪烁:
Image1.Picture.Bitmap.Assign(Bmp);
请教大侠这是什么原因呢?另外请教的是
SetStretchBltMode(Bmp.Canvas.Handle, COLORONCOLOR);这句语句的含义是什么,其中的COLORONCOLOR是什么意思?
多谢了!!
Bmp=TBitmap.Create;
VideoDc := GetDc(VideoPanel.Handle);
CGDataTransform(pBuffer , LineAddr ,OUTPUT_WINDOW_WIDTH, OUTPUT_WINDOW_HEIGHT,
16, True);
SetStretchBltMode(Bmp.Canvas.Handle, COLORONCOLOR);
SetDIBitsToDevice(Bmp.Canvas.Handle, 0, 0, Bmp.Width, Bmp.Height,
0, 0, 0, pBMIInfo^.bmiHeader.biHeight,
pBuffer, pBMIInfo^, DIB_RGB_COLORS);
接下来的程序如果我用以下,则可正常显示:
StretchDIBits(VideoDC, 0, 0, VideoPanel.Width, VideoPanel.Height,
0, 0, pBMIInfo^.bmiHeader.biWidth, pBMIInfo^.bmiHeader.biHeight,
pBuffer, pBMIInfo^, DIB_RGB_COLORS, SRCCOPY);
而如果我用以下,则画面不断闪烁:
Image1.Picture.Bitmap.Assign(Bmp);
请教大侠这是什么原因呢?另外请教的是
SetStretchBltMode(Bmp.Canvas.Handle, COLORONCOLOR);这句语句的含义是什么,其中的COLORONCOLOR是什么意思?
多谢了!!