如何模拟Ctrl+V的粘贴?

zbird 2003-10-17 09:18:53
我想用热键实现Ctrl+V的粘贴功能。

不要用模拟按键的方法,因为如果定义的热键有Ctrl的话则不行。
获取句柄的方法好像也不好,因为象网页表格只类的东西好像无法获取。

大家有没有什么好方法?
如果分不够的话,我可以加。
...全文
440 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
zbird 2003-10-19
  • 打赏
  • 举报
回复
呵呵,
谢大家了。
虽然还没有什么满意的答案。

其实我要实现的功能很简单。
就是用自定义的热键粘贴。
也就是要用自己的热键实现和Ctrl+V一模一样的效果。
大家的方法都有点通用太差了。

节贴先。
如果大家想到什么好方法要记得通知我哦:-)。
redlegend_126_com 2003-10-19
  • 打赏
  • 举报
回复
keyevent事件呀!
uptrend 2003-10-19
  • 打赏
  • 举报
回复
模拟按键用postmessage就可以,至于控制web要用到internet下的webbrowser组建的document
zhksoft 2003-10-19
  • 打赏
  • 举报
回复
up
ly_liuyang 2003-10-18
  • 打赏
  • 举报
回复
SendMessage发送WM_Paste消息就Ok了
pankun 2003-10-18
  • 打赏
  • 举报
回复
向目标句柄发送WM_PASTE试试.
nyf1220 2003-10-18
  • 打赏
  • 举报
回复
定下
pankun 2003-10-18
  • 打赏
  • 举报
回复
你拦载其它进程的消息,再在其它进程中注册热键,再在按下你定义的热键时拦载到WM_HOTKEY消息.然后直接把剪贴板的内容输出到文本框或网页中的文本框中就可以了.
不过还是想不通这样做有什么意义 :-)
zbird 2003-10-18
  • 打赏
  • 举报
回复
我关键是想用其他热键代替Ctrl+V的功能。
ehom 2003-10-18
  • 打赏
  • 举报
回复
控制IE一般就是两种方法,一种是DDE,一种就是ActiveX

安装一个ActiveX组件-Microsoft Shell Controls and Automation(IE4以后,系统都自带了)!安装完后,可看到TShell组件!

窗体放置一个Shell组件

uses ActiveX,MSHTML,OleCtrls,SHDocVw

var
ShWin:IShellWindows;
Wb:IWebBrowser2;


ShWin := Shell.windows as IShellWindows;
//用for i := 0 to ShWin.Count - 1 do遍历

Wb := ShWin.Item(i) as IWebBrowser2;

var
Doc:IHTMLDocument2;

Doc:=Wb.document as IHTMLDocument2;
zbird 2003-10-18
  • 打赏
  • 举报
回复
up
zbird 2003-10-18
  • 打赏
  • 举报
回复
我可以定义全局热键啊,
但关键是我要怎么才能 输出到文本框或网页中的文本框。
如果用模拟按键的方法会因为按键冲突而导致模拟的 Ctrl+V 失效。
就是要sendmessage也要知道向谁send啊。
如果目标文本框根本就没有句柄那就更是麻烦了。

我我想我这回应当是把问题说清楚了吧。
恳请赐教。
ehom 2003-10-18
  • 打赏
  • 举报
回复
不明白模拟Ctrl+V的粘贴(网页里)和直接输出内容到网页中的文本框有何区别?

另外网页里的文本框是没有句柄的,它不是WinControl
zbird 2003-10-18
  • 打赏
  • 举报
回复
但是有的焦点的句柄很难得到啊,
比如网页里的。
zbird 2003-10-17
  • 打赏
  • 举报
回复
是在进程外实现了,
要不然也就不用这么麻烦了。
pankun 2003-10-17
  • 打赏
  • 举报
回复
如果是在你的进程内实现就简单.在其它进程内要实现就麻烦一些,贴主没说清楚需求.
zbird 2003-10-17
  • 打赏
  • 举报
回复
当然是要通过剪贴板(clipboard)了。
但关键是要怎么 paste上啊?
tiexinliu 2003-10-17
  • 打赏
  • 举报
回复
用剪贴板(clipboard),
pankun 2003-10-17
  • 打赏
  • 举报
回复
是你的进程内实现还是在其它进程内实现?

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧