窗体包括标题作为一个位图复制到剪贴板
2013-10-21 13:32
162 查看
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,Clipbrd;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Format: Word;
Data: Cardinal;
APalette: HPALETTE;
begin
{TBitmap.SaveToClipboardFormat 函数的三个参数都是接受数据用的, 按要求类型定义即可}
GetFormImage.SaveToClipboardFormat(Format, Data, APalette);
{放入剪切板}
Clipboard.SetAsHandle(Format, Data);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
dc: HDC;
bmp: TBitmap;
Format : Word;
Bitmap : TBitMap;
Data: THandle;
Palette: HPALETTE;
begin
dc := GetDC(0);
if dc <> 0 then
begin
bmp := TBitmap.Create();
bmp.Width := Width;
bmp.Height := Height;
BitBlt(bmp.Canvas.Handle, 0, 0, Width, Height, dc, Left, Top, SRCCOPY);
bmp.SaveToClipboardFormat(Format, Data, Palette);
Clipboard.SetAsHandle(Format, Data);
bmp.Free();
ReleaseDC(0, dc);
end;
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,Clipbrd;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Format: Word;
Data: Cardinal;
APalette: HPALETTE;
begin
{TBitmap.SaveToClipboardFormat 函数的三个参数都是接受数据用的, 按要求类型定义即可}
GetFormImage.SaveToClipboardFormat(Format, Data, APalette);
{放入剪切板}
Clipboard.SetAsHandle(Format, Data);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
dc: HDC;
bmp: TBitmap;
Format : Word;
Bitmap : TBitMap;
Data: THandle;
Palette: HPALETTE;
begin
dc := GetDC(0);
if dc <> 0 then
begin
bmp := TBitmap.Create();
bmp.Width := Width;
bmp.Height := Height;
BitBlt(bmp.Canvas.Handle, 0, 0, Width, Height, dc, Left, Top, SRCCOPY);
bmp.SaveToClipboardFormat(Format, Data, Palette);
Clipboard.SetAsHandle(Format, Data);
bmp.Free();
ReleaseDC(0, dc);
end;
end;
end.
相关文章推荐
- Linux网络子系统之---- PHY 配置
- UVa 120 Stacks of Flapjacks (STL deque&reverse)
- Linux 3.x 内核学习笔记——页面的周转
- 赴美工作常识(Part 2 - 申请)
- 为eCos安装扩展组件包 .
- 【Firefly 视频】视频课程2-开发环境
- 130个vim常用命令
- 基于Repo和Git的版本管理 .
- DWZ前端框架使用问题记录
- cocos2d-x 游戏暂停界面
- 赴美工作常识(Part 1 - 签证)
- 赴美工作常识(Part 3 - 英语)
- 面试体验:Facebook 篇
- andorid使用异步http框架和第三方HttpClinet上传文件
- 9个offer,12家公司,35场面试,从微软到谷歌,应届计算机毕业生的2012求职之路
- VarIsOrdinal,VarIsFloat,VarIsNumeric判断数字
- TdxMemData 的Bug和使用
- Android02--debug.keystore的注册信息
- 问卷学院在线问卷模板问卷设计
- ActionScript 提交表单数据