首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

SendMessage 模拟发送 "粘贴" 键 , 记事簿可以,网页回复框不行?

2014-01-03 
SendMessage 模拟发送 粘贴 键 , 记事本可以,网页回复框不行???注册一个热键,按下热键就等于向当前光标

SendMessage 模拟发送 "粘贴" 键 , 记事本可以,网页回复框不行???
注册一个热键,按下热键就等于向当前光标处按下"Ctrl + v",以实现粘贴的功能。

测试中,发现在记事本,写字板里按下热键,能够将剪切板内容复制到当前光标。

但是在 网页回复框内按下热键无反应,请问是什么原因??


代码如下:


POINT curpos;   //一个可储存坐标点的结构体变量,x横坐标,y,纵坐标,如curpos.x curpos.y

GetCursorPos(&curpos);  //获取当前鼠标的位置,位置将储存在curpos里。
HWND hwnd1 = ::WindowFromPoint(curpos); //根据curpos所指的坐标点获取窗口句柄

::SendMessage(hwnd1, WM_PASTE, 0, 0);


请问怎么解决?
[解决办法]
你试试直接发送按键
keybd_event(17,0,0,0); 
keybd_event(86,0,0,0); 
keybd_event(86,0,KEYEVENTF_KEYUP,0); 
keybd_event(17,0,KEYEVENTF_KEYUP,0); 

17是ctrl,86是v
另外,也有个SendInput函数,能实现类似功能。

热点排行