起步软件技术论坛-X3

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: 毁灭代码

【结】怎么实现跟XP系统的复制 剪切 粘贴功能?

[复制链接]
发表于 2009-11-13 15:06:05 | 显示全部楼层
NameSpace: Business.System    ClassDelcare: Business.System.Clipbrd
--------------------------------------------------------------------------------
static function Clipboard: TClipboard;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-13 15:21:23 | 显示全部楼层
OK 解决了~
谢谢 shangxy 和 zklbx的帮忙
顺便贴下代码吧
uses Business.System.Clipbrd
implementation
fz:string;//右键的复制变量
procedure TMainForm.N1Click(Sender: TObject);//复制
begin
  fz := DataGrid1.DataSource.DataSet.FieldByName(DataGrid1.FocusedField.FieldName).AsString;
  Clipboard.SetTextBuf(PChar(fz));
end;
回复 支持 反对

使用道具 举报

发表于 2009-11-13 15:46:15 | 显示全部楼层
fz := DataGrid1.DataSource.DataSet.FieldByName(DataGrid1.FocusedField.FieldName).AsString;
换成:
DataGrid1.FocusedField.AsString就可以了吧?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-13 17:42:26 | 显示全部楼层
最初由 shangxy 发布
[B]fz := DataGrid1.DataSource.DataSet.FieldByName(DataGrid1.FocusedField.FieldName).AsString;
换成:
DataGrid1.FocusedField.AsString就可以了吧? [/B]



这也行~优化一下代码~呵呵
判断粘贴板里面的内容是不是文本
if ClipBoard.HasFormat(CF_TEXT)  then
我这样写它怎么不认CF_TEXT?
回复 支持 反对

使用道具 举报

发表于 2009-11-14 11:15:18 | 显示全部楼层
是因为你没有引用单元,在use 那里引用 Borland.Delphi.Windows
当然也可以直接这样写Borland.Delphi.Windows.CF_TEXT

类似这样的东东可以查一下delphi 看看在哪个单元下,引用一下或者写全了就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-16 09:27:47 | 显示全部楼层
最初由 atiger 发布
[B]是因为你没有引用单元,在use 那里引用 Borland.Delphi.Windows
当然也可以直接这样写Borland.Delphi.Windows.CF_TEXT

类似这样的东东可以查一下delphi 看看在哪个单元..

以下省略...... [/B]

问题解决了~

现在我想用快捷键 复制 相当于 Ctrl +C

   if  (key =17) and (key =67)  then // 17 为 CTRL键   67 为C 键
  begin
    N1Click(self); //复制  
  end;
是这样写吗? 代码写在DataGrid1KeyDown 没效果 要写在哪里才实现呢? 望赐教
回复 支持 反对

使用道具 举报

发表于 2009-11-16 10:48:20 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-11-16 11:38:59 | 显示全部楼层
OK~
解决完了~
谢谢了~结贴吧
回复 支持 反对

使用道具 举报

发表于 2009-11-16 12:49:06 | 显示全部楼层
不客气,请楼主抽空把你实现的代码都共享一下吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-14 17:11 , Processed in 0.039783 second(s), 12 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表