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


本文整理自网络,侵删。

 
unit Unit1;

interface

uses
  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.

相关阅读 >>

Delphi 简单字符串截取函数

Delphi spcomm串口控件的例程

Delphi 获取access中的表名

Delphi sql语句查询最新的各个台位的最后一个检测值

Delphi滚动标题栏文字

Delphi xe可执行文件上启用dep和aslr

Delphi 用cxgrid把数据导出到excel时乱码的解决办法

Delphi xe2 - 万一“获取程序自身大小的函数”改进版

Delphi tthread中文注释

Delphi mscomm1自动获取串口

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...