基本上解决了,不过有很多限制
Buffer := TBitmap.Create;
Buffer.Width := ShockwaveFlash1.Width;
Buffer.Height := ShockwaveFlash1.Height;
Image7.Width := ShockwaveFlash1.Width;
Image7.Height:= ShockwaveFlash1.Height;
// Image7.Top := ShockwaveFlash1.Top;
// Image7.Left := ShockwaveFlash1.Left;
ShockwaveFlash1.Movie := pGetCurDir+'nicefly.swf';
ShockwaveFlash1.Play;
Buffer.Transparent := False;
ShockwaveFlash1.PaintTo(Buffer.Canvas,0,0);
Buffer.PixelFormat := pf24bit;
Buffer.Canvas.Brush.Style := bsClear;
Buffer.Transparent := True;
image7.Picture.Bitmap.Assign(Buffer);
加个time控件并添加事件
ShockwaveFlash1.PaintTo(Image7.picture.bitmap.Canvas,0,0);
image7.repaint;
//form.transparentcolorvalue and shockwaveflash.bgcolor和flash的背景颜色要一样