把窗体客户区图像保存到文件或剪切板

来源:互联网 发布:淘宝排名权重 编辑:程序博客网 时间:2024/04/30 12:11
unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls;type  TForm1 = class(TForm)    Button1: TButton;    Button2: TButton;    Button3: TButton;    procedure Button1Click(Sender: TObject);    procedure Button2Click(Sender: TObject);    procedure Button3Click(Sender: TObject);  end;var  Form1: TForm1;implementation{$R *.dfm}uses Clipbrd; {剪切板单元}//把窗体客户区保存为图片procedure TForm1.Button1Click(Sender: TObject);var  bit: TBitmap;begin  bit := TBitmap.Create;  bit := Self.GetFormImage;  bit.SaveToFile('c:\temp\img1.bmp');  bit.Free;end;//用一句话完成上一个过程procedure TForm1.Button2Click(Sender: TObject);begin  Self.GetFormImage.SaveToFile('c:\temp\img2.bmp');end;//把窗体客户区图像复制到剪切板procedure TForm1.Button3Click(Sender: TObject);var  Format: Word;  Data: Cardinal;  APalette: HPALETTE;begin  {TBitmap.SaveToClipboardFormat 函数的三个参数都是接受数据用的, 按要求类型定义即可}  GetFormImage.SaveToClipboardFormat(Format, Data, APalette);  {放入剪切板}  Clipboard.SetAsHandle(Format, Data);end;end.
0 0