怎么复制一个隐藏窗口(即窗口未显示,但已经创建)上的所以内容到TImage!!
有难度哦,问过一次了,没有解决问题,只有dododo(呵呵)差不多:
Image1.Canvas.CopyRect(Image1.ClientRect,frm2.canvas,frm2.ClientRect)
Image1.Refresh(); 但是不能是一个隐藏窗口,而且不能被遮盖,不然就有问题!看看大家有没有办法解决!!
有难度哦,问过一次了,没有解决问题,只有dododo(呵呵)差不多:
Image1.Canvas.CopyRect(Image1.ClientRect,frm2.canvas,frm2.ClientRect)
Image1.Refresh(); 但是不能是一个隐藏窗口,而且不能被遮盖,不然就有问题!看看大家有没有办法解决!!
================================================================
我是中国鹰派!
拒绝日货!打倒小日本!
var
FormImage: TBitmap;
begin
FormImage := Form2.GetFormImage;
try
Clipboard.Assign(FormImage);
Image1.Picture.Assign(Clipboard);
finally
FormImage.Free;
end;
end;
{
TRect Rect;
GetWindowRect(hWnd,&Rect);
// Grab background image
Graphics::TBitmap* TempBkgnd=new Graphics::TBitmap(); TempBkgnd->Width = Rect.Width();
TempBkgnd->Height = Rect.Height(); SendMessage(hWnd,WM_ERASEBKGND, (WPARAM)TempBkgnd->Canvas->Handle, 0);
SendMessage(hWnd,WM_PAINT, (WPARAM)TempBkgnd->Canvas->Handle, 0); //........
//TempBkgnd的内容应该就是那个窗口的画面了?
delete TempBkgnd;
}
{
TRect Rect;
GetWindowRect(hWnd,&Rect);
// Grab background image
Graphics::TBitmap* TempBkgnd=new Graphics::TBitmap(); TempBkgnd->Width = Rect.Width();
TempBkgnd->Height = Rect.Height(); SendMessage(hWnd,WM_ERASEBKGND, (WPARAM)TempBkgnd->Canvas->Handle, 0);
SendMessage(hWnd,WM_PAINT, (WPARAM)TempBkgnd->Canvas->Handle, 0); //........
//TempBkgnd的内容应该就是那个窗口的画面了?
delete TempBkgnd;
}
Clipbrd;
BCB_FANS(四大名捕之追杀令)的确是C++方面的绝顶高手,但是本人不懂C++,兄弟,没有办法,我只好把大部分的分给windofsun(太阳风).