把一个字符串复制到剪贴板?
str: string;
str:='Registration form: ------';
//请问如何把该字符串的内容直接复制到剪贴板中,不要通过Memo1.CopyToClipboard;
问题点数:10、回复次数:10Top
1 楼TechnoFantasy((VB MVP)www.applevb.com)回复于 2002-03-26 20:35:13 得分 5
procedure TForm1.Button1Click(Sender: TObject);
var
str : string;
begin
str:='Registration form: ------';
Clipboard.SetTextBuf(PChar(str));
end;
引用ClipbrdTop
2 楼zswang(伴水清清)(专家门诊清洁工)回复于 2002-03-26 20:36:05 得分 5
uses
Clipbrd;
procedure TForm1.FormCreate(Sender: TObject);
begin
Clipboard.AsText := '你的字符串';
end;
Top
3 楼tangyong_delphi()回复于 2002-03-26 20:41:03 得分 0
要通过Memo1.CopyToClipboardTop
4 楼cysnowboy(跳水的鱼儿)回复于 2002-03-26 20:52:13 得分 0
请问SetTextBuf和AsText有什么区别呢?答完马上给分!Top
5 楼zswang(伴水清清)(专家门诊清洁工)回复于 2002-03-26 20:59:57 得分 0
没有多大区别
AsText是属性
SetTextBuf是方法
当出现Clipboard.AsText := '你的字符串';
时最终还是会调用SetTextBuf
但我建议你使用AsText
你还可以使用如下语句
Edit1.Text := Clipboard.AsText;Top
6 楼TechnoFantasy((VB MVP)www.applevb.com)回复于 2002-03-26 21:10:40 得分 0
to : zswang(伴水)(需要充充电)
实际上最终调用的是SetBuffer,你可以看一下源码:
procedure TClipboard.SetTextBuf(Buffer: PChar);
begin
SetBuffer(CF_TEXT, Buffer^, StrLen(Buffer) + 1);
end;
property AsText: string read GetAsText write SetAsText;
procedure TClipboard.SetAsText(const Value: string);
begin
SetBuffer(CF_TEXT, PChar(Value)^, Length(Value) + 1);
end;
上面你认为那个安全一些呢?Top
7 楼johnmack(爱若琴弦)回复于 2002-03-26 23:02:13 得分 0
还是AsText比较好!!Top
8 楼zswang(伴水清清)(专家门诊清洁工)回复于 2002-03-27 08:43:24 得分 0
嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻
嘻嘻嘻萝卜白菜个有所爱!嘻嘻嘻嘻
嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻
Top
9 楼cysnowboy(跳水的鱼儿)回复于 2002-03-27 19:05:56 得分 0
谢谢两位高手的指点!Top
10 楼cysnowboy(跳水的鱼儿)回复于 2002-03-27 19:06:56 得分 0
不过究竟是那个安全呢?Top




