您的当前位置:我要购书网>在线阅读>VC++/C#/C

使用mouse_event来模拟一次选中文本框中的文本

来源:互联网  作者:我要购书网信息中心  发布:我要购物网收集整理  发布时间:2006-8-31 人气:245

使用mouse_event可以模拟一些通过鼠标执行的事情,下面我们就来模拟一次鼠标在EDIT中选择一段文本的过程。

首先我们来分解一下选中文本的鼠标动作,其包括基本方面:将鼠标移动到指定的位置,文本的开始处按下鼠标(WM_LBUTTONDOWN)在按下鼠标的同时移动鼠标到指定的位置松开鼠标左键(WM_LBUTTONUP)

知道了这个过程我们就来通过程序来模拟吧。我自己实验的时候建立了DIALOG工程,在DIALOG上放了一个BUTTON,一个EDIT,将程序写到BUTTON事件中,程序如下:

void CTestChkDlg: nBnClickedButton1(){ RECT rect; GetDlgItem(IDC_EDIT)->GetWindowRect(&rect); SetCursorPos(rect.left+5,rect.top+5); mouse_event(MOUSEEVENTF_ABSOLUTE|MOUSEEVENTF_LEFTDOWN,rect.left+1,rect.top+1,0,0); SetCursorPos(rect.left+60,rect.top+10); //mouse_event(MOUSEEVENTF_ABSOLUTE|MOUSEEVENTF_MOVE,500,600,0,0); mouse_event(MOUSEEVENTF_ABSOLUTE|MOUSEEVENTF_LEFTUP,rect.left+60,rect.top+5,0,0);}首先我们需要做的是取得EDIT的位置,然后将鼠标移动到那里(SetCursorPos),这里加5是让鼠标在EDIT里面,因为EDIT有边,如果按照RECT的值来可能选择不了;然后使用MOUSEEVENTF_LEFTDOWN来按下鼠标,在按下鼠标的时候再将鼠标移动到文本的指定位置,然后松开鼠标。好了文本选中了。既然可以通过程序来模拟真正的鼠标动作,那么我们就可以写一些自动安装程序就不是什么难事情了。记得以前我们公司采用LOTUS软件来拷勤,需要在上面刷卡,哈哈,既然鼠标能模拟,这种方法可以写个程序来帮你刷卡,你永远不会迟到。当然,如果你真的这么做,后果自负。

相关文章
· 使用 system.web.mail发送邮件
· 使用delphi开发多媒体播放音轨问题的faq(原创)
· 使用directshow播放摄像头的基类
· 使用dumpbin命令
· 使用mouse_event来模拟一次选中文本框中的文本
· 使用eclipse进行swt编程(2)
· 使用md5校验和算法保护文件
· 使用directshow播放mpeg的基类
· 使用vc6进行ado编程,使用sql server 20..
· 使用vc++进行tray区编程
热点文章
%>
· creating user controls
· 提高fastreplace速度 (fstrrep.pas)
· asc ii 完整码表及简介
· 自动生成拼音(汉字反查到拼音)
· sql2000无法安装的解决办法
· 浏览器集成教学 自定义浏览器
· vc++技术内幕(第四版)笔记(第7章)
· mysql5.0中文乱码解决方案
· sql server日期计算
· vc下利用ado连接access数据库
 淘宝旺旺:我要购书网上书店『图书目录
本购书中心地址: 杭州市延安路111号清波商厦南楼D座(总部) 上海市闸北区老沪太路网上购书中心(沪部),  邮编:310002
电子邮件:books@51goushu.com  经营许可证编号:沪ICP备06038574号
版权所有 2003-2008 © All Rights Reserved .购书网