这很难,除非要截取图的程序是你自己写的,用Createwindow重定义过。能够
在NOTvisible下接受wm_paint消息。
以下这段程序可以简单验证.(不包括DX等直接写屏的软件和游戏)
...
uses unit2;
var
hd:Thandle;
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
application.CreateForm(Tform2,form2);//新建一个form
hd:=form2.Button1.Handle;
form2.Show;
//form2.Visible:=false;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
sendmessage(hd,wm_paint,getdc(self.Handle),0);
//这个消息告诉句柄为hd的控件重画自己到getdc(self.handle)的设备上。
//但是,如果visible为false就不能画。
//透明窗体没实验过,估计可以。
end;