发布网友 发布时间:2022-04-24 15:12
共1个回答
热心网友 时间:2023-10-18 09:37
1)运行模拟鼠标功能的一些程序,此法适用于诸多的操作系统(已经测试过了95,97,98,98se,2000,me等,还没有测试过DOS,win3.x和NT)。这种程序的运用可以在很大程度上上代替鼠标(除了那些需要在按住鼠标左键的同时还要移动鼠标的操作,如:对窗口的随意拖动,word文档中内容的连续选择和文件夹间的拖动等)。运用这类模拟程序,我们可以设置鼠标移动的(八个)方向键,逻辑左键,逻辑右键,左双击键,右双击键,以及鼠标滑动的速度等,这些一般设置在数字小键盘上(当然设置在大键盘上也未必不可,视个人的习惯而定。这些程序在国外非常的多,但是国内使用较多的是VirtualMouse。2)直接利用数字小键盘来模拟鼠标的多数功能,但是这项功能只在win98以上的版本中开放了,低于win98的系统(如97,95)就没有此功能。我们可以在"开始-->设置-->控制面板-->辅助选项-->鼠标-->鼠标键"中找到这项功能。为了让读者免除阅读帮助文件的麻烦和痛苦(因为它说明的不清不楚,让人费解),下面我把它的具体使用方法给大家说明一下,希望能够讲述得比BillGates的"瘟酒吧-吐"清楚那么一点点。和第一种方法--鼠标功能模拟程序那样,1,2,3,6,9,8,7,4八个数字键是鼠标的(八个)方向键的替代键,5代替鼠标的单击(既可以是左键的单击,也可以是右键的单击,具体是哪个键要看在tray中的鼠标键状态图标的指示),揿下5在鼠标键状态图标上的反应是相应的键的一次闪烁;"+"代替双击(同样也没有指定是哪个键的双击),在鼠标键图标上的反应是相应的键连续闪烁两次;"*"代替左右两键的同时单击,在鼠标键图标上的反应是相应的两个键同时闪烁一次,"/"是切换键,既是单击与双击间的切换,又是左键和右键间的切换;所有的这些状态都会在状态栏中的鼠标键图标上得到体现,当然左右键的状态是非常明显的显示在相应的图标上,而单击显示为灰色,双击显示为黑色。"0(Ins)"键代替按下鼠标键(同样没有指明左右键),在鼠标键状态图标上的反应是相应的键由灰变黑,这个键为我们拖动文件夹,选择文档的部分内容提供了方便;"·(del)"键则代替释放鼠标键,在鼠标键图标上的反应是相应的键由黑变灰。还可以设置鼠标移动的速度(crl表示加速,shift表示减速),数字小键盘的开关键(Alt+Shift+NumLock)等等。记住,由于数字小键盘不是真的鼠标,所以要领会它的一些规章制度。要领就是先确定下面的操作是左键呢还是右键,以及是单击呢还是双击,鼠标键是按下还是松开?然后再进行相关的操作。如果您还没有听清的话,或者您想知道得一些,请参考相关的帮助文件。3)用键盘的各种快捷键/组合键来代替鼠标的各种操作,当然这种方法的缺点就是要记忆许多的组合键,如同dos命令相对于windows操作来说的那种麻烦和扰人:[左键]大小键盘上的enter键。[右键]用shift+F10可以完全代替,而alt+enter则是shift+F10+R的替代键:查看某选项(可以是文件,也可以是文件夹,甚至是硬盘)的属性。[菜单的弹出与激活]可以用alt键或者组合键ctrl+f10来弹出第一个菜单,或者用alt+相应的字母,直接弹出对应的菜单;在子菜单中,可以直接用相应的缩写字母来执行对应的功能,也可以用键盘中的上下键移到相应的子菜单项上(特别是对于那些子菜单非常多,而我们需要的东东又在倒数几个的位置),再用enter键执行该功能。[win键]^+ESC[选定、选择]SHIFT+方向键为行选择方式,SHIFT+ALT+方向键为列选择方式(列选择在word排版时比较适用)shift+home/end:选定的范围是从当前的光标位置到行首/行末;shift+PageUp/PageDown:选定的范围从当前的光标处到页首/页末;shift+ctrl+PageUp/PageDown:选定的范围从当前的光标处到文顶/文底(注意ctrl+PageUp/PageDown的效果是将光标直接跳到顶部/底部,配合鼠标的操作特别奏效)[TAB键]IE中:在Web页、地址栏和链接栏中向前移动到下一个项目;alt+home:进入您的主页[当前窗口间的切换]如果只有少数几个窗口的话,就直接利用alt+TAB键来切换,ALT+TAB:两个键同时按下时,是在切换,但是当前的活动窗口还没有改变,直到alt键松开时,活动窗口才改变,shift+alt+tab切换顺序变成为逆序,ALT+ESC:每按下一次该组合键(不管alt键松开与否),当前的活动窗口就顺序的变成下一个,shift+alt+esc:功能和alt+esc一样,只不过是切换顺序变成了逆序如果开有非常多的程序窗口,先用^+ESC弹出win键,然后用ESC取消,接着再利用TAB键在win键,状态栏,工具栏和systray之间切换,当鼠标切换到相应的地方时,再运用左右键;最后的法就是用alt+space弹出窗口的控制菜单,然后将当前窗口最小化,最后就可以看到需要的窗口了。[窗口的最大化,最小化,关闭]窗口的关闭:ALT+F4,CTRL+W,ALT+F+X,CAD(^+ALT+DEL)再选择需要关闭的窗口名称,或者用alt+space弹出控制菜单,然后选择"关闭"一项;其中alt+f4是退出某程序,ctrl+w是关闭某程序的当前窗口,而不关闭其他窗口,但是如果某程序只开了一个窗口时,其效果就是退出该程序;最大、最小化、以及恢复/还原:ALT+SPACE(打开窗口的控制菜单,选择恢复/还原、最大化,最小化,调节窗口大小、移动等功能项)[窗口的移动]ALT+SPACE打开控制菜单,然后选择m(移动)一项,这样用上下左右键就可以移动窗口了,[窗口大小的改变]ALT+SPACE,然后选择s(大小)一项,同样的,上下左右键可以改变窗口的大小[窗口的翻页]:PageDown和PageUp分别是向下和向上翻一页,ctrl+PageDown和ctrl+PageUp分别是翻到窗口的底部和顶端,home/end:到行首和行尾,在IE中是到窗口的top和bottum[文件的移动、改名与删除]DEL:放到回收站中,SHIFT+DEL:直接删除,不经过回收站[文件的选择]选择一个:就是用上下左右键来选择;选择全部:用ctrl+a键就可以了;有规律性的或者说是连续性的选择:用shift+方向键就可以了;无规律性的选择:按住ctrl键,然后按方向键到所需要选择的项目上,然后按下空格space键就可选上该项目,然后再移动方向键,再space进行选择(此时需要一直按着ctrl键);如果在众多的项目中只有少数的项目不选:我们可以先选择好这些不需要选择的项目,然后用编辑菜单下的"反向选择"功能进行选择,就达到了选择大多数项目的目的;[工具栏中功能的实现]前进、后退、向上、停止、cut,copy,paste、undo,delete,属性请参考windows帮助系统中的"快睫方式,键盘"一项的具体说明CTRL+S,ALT+F+S,ALT+F+A,ctrl+Z,ALT+BackSpace:取消上一步的操作,也就是会到上一步的操作结果中,但是不能够回到下一步的操作结果中。BackSpace是后退一步,在IE中类似于alt+〈-[某些属性的快捷键(有鼠标时也是如此)]CAD(ctrl+ALT+DEL):终止进程、关闭和重启计算机ctrl+A:对当前编辑窗口中的内容进行全选;ctrl+C:对已经被选定的对象进行复制;ctrl+V:在光标位置粘贴已经被复制的对象/内容,同时被复制的对象不被删除;ctrl+X:对被选定的内容/对象进行复制,并且在该内容/对象已经被粘贴之后,再删除原有的内容/对象,否则不予删除;(有点类似于^+C)ctrl+Z:对最近的一次操作进行反悔(undo)、撤消;ALT+BackSpace:undoctrl+S:保存当前窗口的内容,以及快速保存,和Alt+F+s效果相同ctrl+N:在现有IE窗口的基础上再打开一个新窗口,新窗口的内容与当前窗口一样;ctrl+P:弹出打印有关的内容的菜单,知道确认后才正式的打印。ctrl+B:在office编辑中,起到对字体加黑/去黑的作用;ctrl+I:在office编辑中,起到对字体倾斜/去斜的作用;ctrl+W:效果和组合键Alt+F4相同,关闭当前的窗口(而不是直接关闭当前窗口涉及的程序),在IE,Office程序,我的电脑以及windows资源管理器中起到亦起相同作用ctrl+R:类似于ctrl+F5,对当前内容进行强制性的更新,而不检验、对比内容的日期ALT+ENTER:快速查看所选项目的属性,功能和SHIFT+F10+R/P一样ALT+PrintScreen:将整个屏幕上的内容存成图片并copy在剪贴板中,以供复制SHIFT+F10:弹出"打开方式"·在win系列的启动中按住SHIFT,可以直接进入"安全模式",出现win画面后再按SHIFT键,则跳过"开始/程序/启动"程序组中的程序·在放入光盘时按住SHIFT,则是作为自动播放的开关/转化、·在^+ALT+SHIFT之后需要重新启动机器时,按住SHIFT,则是重新启动GUI即windows,而不需要再从BIOS开始,某些时候节约了时间,加快了速度。shift+dele:彻底地删除文件,而不是扔到垃圾箱中[功能键]F1:帮助文件的导出,f2:重新命名的快捷方式,功能等同于"右键-->重命名"F3:对内容的查找,作用等同于"win键-->查找-->文件或文件夹"f4:将光标指向地址栏,并且弹出当前地址的相对地址,以及所有的地址(在资源管理器中)shift+f4:将光标指向地址栏,并且弹出当前地址的相对地址,以及所有的地址(在资源管理器中)ctrl+f4:将光标指向地址栏,而没有其他的操作F5:对内容的更新/刷新,在文本编辑框中,调出当前的时间:时分年月日,比如19:182000-08-02F5或CTRL+R仅当Web上的页面与本机存储的Web页时间戳不同时,才刷新当前Web页CTRL+F5即使Web上的页面与本机存储的Web页时间戳相同,仍然刷新当前Web页f6:功能和tab键一样,完成顺序的切换,ctrl+f6也一样shift+f6:功能和shift+tab键一样,完成逆序的切换工作f10:相当与alt键的功能类似,弹出的菜单中包含是第一个菜单(多数为文件)的内容,同时还有在所选择的项目上的右键所弹出的菜单的内容shift+f10:鼠标的右键功能,在IE中是显示某个链接的快捷菜单F11:在全屏幕和常规窗口(最大化)之间进行切换;[在IE中的操作]ESC:终止网页下载(更新)过程,而不取消所下载的网页,也就是说,下载了多少网页代码,就解释/显示多少网页内容CTRL+L:转到新位置ctrl+o:在IE中是弹出"打开新网页"的对话框CTRL+N:直接打开新窗口(内容和最后一次成功显示的页面内容相同)CTRL+W:关闭当前窗口CTRL+S:保存当前页CTRL+P:打印当前页或当前框架ENTER:激活选定的链接CTRL+E:在浏览栏中打开搜索页CTRL+I:在浏览栏中打开收藏夹CTRL+H:在浏览栏中打开历史记录CTRL+单击:在历史记录或收藏栏上,打开多个文件夹alt+右箭头键alt+左箭头键[使用地址栏]ALT+D:选择地址栏中的文字F4:显示地址栏的历史记录CTRL+向左箭头:在地址栏中时,将光标左移到相邻的逻辑分隔符(.或/)CTRL+向右箭头:在地址栏中时,将光标右移到相邻的逻辑分隔符(.或/)CTRL+ENTER:在地址栏中将""添加到键入的文本的前面,将".com"添加到文本的后面向上箭头:在"自动完成"建议项的列表中向前移动向下箭头:在"自动完成"建议项的列表中向后移动[使用收藏夹]CTRL+D:将当前Web页添加到收藏夹中CTRL+B:打开"整理收藏夹"对话框ALT+UPARROW:在"整理收藏夹"对话框的"收藏夹"列表中向上移动所选项目ALT+DOWNARROW:在"整理收藏夹"对话框的"收藏夹"列表中向下移动所选项目[文本的编辑]CTRL+X:删除所选项目并将其复制到剪贴板中CTRL+C:将所选项目复制到剪贴板CTRL+V:将剪贴板中的内容插入到所选位置CTRL+A:选中当前Web页中的所有项目在word(office)编排时,ctrl+"="为下标;ctrl+shift为上标;ctrl+b为黑体;ctrl+i为斜体;ctrl+u为下划线;鼠标的拖动:将所选项目的快捷方式拖到新的地方(如桌面,另外的文件夹中)ctrl+拖动:可在任意两文件夹之间拷贝(不同盘之间可剩去ctrl);shift+拖动:可在任意两个文件夹之间移动(同一盘上可剩去shift;ctrl+shift+拖动:创建快捷方式ctrl+shift:切换中文输入法shift+空格:切换全角/半角方式在IE中,用shift+左键确认:在新的窗口中显示该链接指定的web页面的内容或者函数功能:该函数定义一个系统范围的热键。函数原型:BOOLRegisterHotKey(HWNDhWnd,intid,UINTfsModifiers,UINTvk);参数:hWnd:接收热键产生WM_HOTKEY消息的窗口句柄。若该参数NULL,传递给调用线程的WM_HOTKEY消息必须在消息循环中中进行处理。id:定义热键的标识符。调用线程中的其他热键不能使用同样的标识符。应用功能程序必须定义一个0X0000-0xBFFF范围的值。一个共享的动态链接库(DLL)必须定义一个0xC000-0xFFFF范围的值伯GlobalAddAtom函数返回该范围)。为了避免与其他动态链接库定义的热键冲突,一个DLL必须使用GlobalAddAtom函数获得热键的标识符。fsModifoers:定义为了产生WM_HOTKEY消息而必须与由nVirtKey参数定义的键一起按下的键。该参数可以是如下值的组合:MOD_ALT:按下的可以是任一Alt键。MOD_CONTROL:按下的可以是任一Ctrl键。MOD_SHIFT:按下的可以是任一Shift键。MOD_WIN:按下的可以是任一Windows按键。这些键可以用MicrosoftWindows日志记录下来。vk:定义热键的虚拟键码。返回值:若函数调用成功,返回一个非O值。若函数调用失败,则返回值为0。若要获得的错误信息,可以调用GetLastError函数。备注:当某键被接下时,系统在所有的热键中寻找匹配者。一旦找到一个匹配的热键,系统将把WM_HOTKEY消息传递给登记了该热键的线程的消息队列。该消息被传送到队列头部,因此它将在下一轮消息循环中被移去。该函数不能将热键同其他线程创建的窗口关联起来。若为一热键定义的击键己被其他热键所定义,则RegisterHotKey函数调用失败。若hWnd参数标识的窗口已用与id参数定义的相同的标识符登记了一个热键,则参数fsModifiers和vk的新值将替代这些参数先前定义的值。WindowsCE:WindowsCE2.0以上版本对于参数fsModifiers支持一个附加的标志位。叫做MOD_KEYUP。若设置MOD_KEYUP位,则当发生键被按下或被弹起的事件时,窗口将发送WM_HOTKEY消息。RegisterHotKey可以被用来在线程之间登记热键。速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:不支持;头文件:winuser.h;库文件:user32.lib。为了得到唯一标识,我们还将用到另一个API函数ATOMGlobalAddAtom(LPCTSTRlpString//自己设定的一个字符串);因为我们还要在程序退出的时候,消除这个热键,所以需要声明一个全局变量:HotKeyId:Integer;第一步:在窗口的create事件中,加入以下代码HotKeyId:=GlobalAddAtom(‘MyHotKey’)-$C000;注:HotKeyId的合法取之范围是0x0000到0xBFFF之间,GlobalAddAtom函数得到的值在0xC000到0xFFFF之间,所以减掉0xC000来满足调用要求。第二步:在上面的代码下面加入:RegisterHotKey(Handle,hotkeyid,MOD_ALT,VK_F8);热键的辅助按键包括Mod_Ctrl、Mod_Alt、Mod_Shift,对于Windows兼容键盘还支持Windows键,即其键面上有Windows标志的那个键,其值为Mod_win。上面的代码注册了一个热键:ALT+F8。当然如果你希望象TAKEIT那样,只用F8,就这么写:RegisterHotKey(Handle,hotkeyid,0,VK_F8);注:handle是一个特殊的变量,它表示当前窗口的句柄。这个函数你应该能句举一反三了吧。原理:一旦热键设置成功,在程序应用过程中如果有相应的键被按下,Windows系统都会给你的应用程序发送一个消息WM_HOTKEY,不管你的应用程序是否为当前活动的。其中WM_HOTKEY消息的格式为:idHotKey=(int)wParam;//该参数在设置系统级的热键有用,一般不予使用fuModifiers=(UINT)LOWORD(lParam);//热键的辅助按键uVirtKey=(UINT)HIWORD(lParam);//热键的键值第三步:注册了热键,就该写下响应代码了。首先,在程序头部分的private段中加入声明(作用是声明这个过程,和声明变量类似。关于如何声明函数、过程,请请参考各自的帮助文件或其它资料):procereHotKeyDown(varMsg:Tmessage);messageWM_HOTKEY;然后在程序中加入如下代码:procereTfmain.HotKeyDown(varMsg:Tmessage);beginif(Msg.LparamLo=MOD_ALT)ANDMsg.LParamHi=VK_F8then//假设热键为ALT+F8beginend;最后一步:在窗口的close事件中加入UnRegisterHotKey(handle,HotKeyId);//注销HotKey,释放资源测试代码:首先用RegisterHotKey函数注册一个热键,例如Enter键。当按下Enter后,就调用mouse_event函数,模拟点击鼠标左键。unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs;typeTForm1=class(TForm)procereFormCreate(Sender:TObject);procereFormDestroy(Sender:TObject);procereOnHotKey(varmsg:Tmessage);messageWM_HOTKEY;privatepublicend;varForm1:TForm1;implementationprocereTForm1.OnHotKey(varmsg:Tmessage);varpt:TPoint;beginifmsg.WParam=9999thenbeginGetCursorPos(pt);mouse_event(MOUSEEVENTF_LEFTDOWN,pt.x,pt.y,0,0);mouse_event(MOUSEEVENTF_LEFTUP,pt.x,pt.y,0,0);end;end;procereTForm1.FormCreate(Sender:TObject);beginRegisterHotkey(handle,9999,0,VK_RETURN);//注册一个id为9999的hotkeyend;procereTForm1.FormDestroy(Sender:TObject);beginUnRegisterHotkey(handle,9999);end;end.试试以上代码,运行时按回车键,就会模拟点击鼠标左键的了。