复制粘贴文字 适合与任何地方,比如:delphi外ie浏览器,电子词典。设想通过鼠标选取需要的文字,通过快捷键(比如:ctrl+1)复制并粘贴进delphi文本框中。简单的说就是通过快捷键实现文字的复制粘贴。本人分不多,麻烦大家了. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Uses ClipBrd;使用全局变量对象Clipboard,比如Clipboard.AsText 试试unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Clipbrd;type TForm1 = class(TForm) Memo1: TMemo; Timer1: TTimer; procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } hkid: Integer; procedure WMHotkey(var AMsg: TMessage); message WM_HOTKEY; public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);begin hkid := GlobalAddAtom('myhotkeyid'); RegisterHotKey(Handle, hkid, MOD_CONTROL, Ord('1'));end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);begin UnregisterHotKey(Handle, hkid); GlobalDeleteAtom(hkid);end;procedure TForm1.WMHotkey(var AMsg: TMessage);begin if AMsg.WParam = hkid then begin Clipboard.Clear; keybd_event(VK_CONTROL, 0, 0, 0); Sleep(10); keybd_event(Ord('C'), 0, 0, 0); Sleep(10); keybd_event(Ord('C'), 0, KEYEVENTF_KEYUP, 0); Sleep(10); keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); Sleep(10); Memo1.Lines.Add(Clipboard.AsText); end;end;end. 按ctrl+1提示cannot open Clipboard.?? #5楼(皮皮鲁) 你好!你的那个例子我试了,很好,可是只能针对别的,对于网页里的文字还是无法提取出现‘cannot open Clipboard. ’这个错误,我实在不知道什么原因?你能帮我把这个问题解决了吗?先谢谢了 报错List index out of bounds (1),越界错误。。求解。。 TEdit的Ctl3D属性 关于Form显示在Panel 上关闭的问题 高分求解,一个很难的算法 超级解霸的菜单是如何实现的? 如何得到主窗口打开完成后的事件,比如我想完成程序载入后执行一些内容。在线... 有谁能给我清楚的讲讲存储过程调用的问题 未找到提供程序,该程序可能未正确安装 送分第一个进入全给 使页得到焦点的方法我怎么用错了呢? 急!delphi里如何接收DLL过来的自定义消息!! 跪求ApplicationStudio,请发给我([email protected]),谢谢
使用全局变量对象Clipboard,比如Clipboard.AsText
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Clipbrd;type
TForm1 = class(TForm)
Memo1: TMemo;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
hkid: Integer;
procedure WMHotkey(var AMsg: TMessage); message WM_HOTKEY;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
hkid := GlobalAddAtom('myhotkeyid');
RegisterHotKey(Handle, hkid, MOD_CONTROL, Ord('1'));end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnregisterHotKey(Handle, hkid);
GlobalDeleteAtom(hkid);
end;procedure TForm1.WMHotkey(var AMsg: TMessage);
begin
if AMsg.WParam = hkid then
begin
Clipboard.Clear;
keybd_event(VK_CONTROL, 0, 0, 0);
Sleep(10);
keybd_event(Ord('C'), 0, 0, 0);
Sleep(10);
keybd_event(Ord('C'), 0, KEYEVENTF_KEYUP, 0);
Sleep(10);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
Sleep(10);
Memo1.Lines.Add(Clipboard.AsText);
end;
end;end.
cannot open Clipboard.
??