打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
strokeit+hoekey+PodXP实现鼠标手势和热键快速切换任务栏任务
strokeit+hoekey+PodXP实现鼠标手势和热键快速切换任务栏任务
2008-06-01 19:29| 分类:tech windows| 标签:hoekeypodxpstrokeittaskbar | 3,316 次点击
X
Hi!帅哥,你从百度上找到我,如果感觉博客内容对你有用,你可以 订阅本博RSS ,谢谢!
前言:浏览器早就可以实现多标签,并且可以用鼠标手势快速切换标签;而资源管理器用自带的Explorer加上QTTabbar插件也可实现多标签。这两个最常用软件的工作界面都可以实现鼠标手势浏览了,于是我考虑对整个windows下的任务也实现“鼠标手势切换任务/程序”。
一、Shell的选择:
因为已经用惯了自带的shell——explorer.exe,也喜欢它的简洁,所以不打算换个shell(比如objectdockplus、Aston、ShellToysXP等),只能在这有缺陷的Explorer中想办法实现这个功能,什么缺陷,我下文会提到)
二、任务切换工具的选择:
WinTabber可以实现所有程序都多标签,JediWindowDock也可实现对指定窗口进行标签浏览(我是听《电脑爱好者》上介绍的这款,可以实现qq聊天窗口多标签),似乎还是同一个作者做的。两款我都试过,非常不好用,意义也不大,所以选定通过Explorer自带的任务栏。
三、探讨用windows xp自带的任务切换快捷方式的可能性:
(1)、Alt+Tab:按一次Alt+Tab的话,只是实现了切换到上一个激活的程序,再按一次Alt+Tab,则又跑回来,所以Alt+Tab的功能一个是两个程序间的切换,显然Alt+Tab的这个功能无法实现所有任务间切换;按住Alt,然后按多次Tab,可以看到这样子是可以实现切换到任何程序,而且按住Alt+Shift,再按Tab,还可以返回。但问题是:这些程序是按照上一次激活的顺序排列的,不是按照打开的顺序排列的,而任务栏中的程序顺序是按照打开顺序排列的,所以两种顺序是不一样的,而我们要实现鼠标手势或者快捷键,都是参考任务栏的,所以Alt+Tab的这个功能也无法实现可视的准确的所有任务间切换。
(2)、Alt+Esc:每按一次,就往跳到上一次激活的程序,而按Alt+Shift+Esc,则跑到后一次激活的程序,同样,因为激活的顺序与打开的顺序不总是一样(而且一般不一样),所以Alt+Esc的这个功能也不能实现我要的功能。
四、探讨多个windows键盘动作的可能性:
按下Win放开,然后按Tab,可以激活windows任务栏Shell_TrayWnd(包括开始按钮,任务栏列表,系统托盘区),继续按六次Tab,可以选定(不是激活)任务栏任务列表的第一个任务,然后可以用箭头按键选择各个任务,选到你需要的任务时可以按Space或者Enter激活窗口;
按住Win+Tab,可以激活Shell_TrayWnd并选定任务栏任务列表的第二个(确实是第二个,要知道为什么不是第一个只能去问微软工程师了),然后可以继续按住Win+Shift,点按Tab或者按左右箭头按键选择各个任务,选到你需要的任务时可以按Space或者Enter激活窗口;
按住Win+Shift+Tab,可以激活Shell_TrayWnd并选定任务栏任务列表的最后一个,然后可以继续按住Win+Shift,点按Tab或者按左右箭头按键选择各个任务,选到你需要的任务时可以按Space或者Enter激活窗口;
按住Win+B,可以激活任务栏托盘区systray(这是我在hoekey的说明文件hoekey.txt中看到的),再按四下Tab,可以选定(不是激活)任务栏任务列表的第一个任务,然后可以用箭头按键选择各个任务,选到你需要的任务时可以按Space或者Enter激活窗口。
以上几种键盘动作,都无法实现选定当前任务在任务栏列表中的位置,windows只给屏幕下方的一大块(包括开始按钮、系统任务栏列表、系统托盘、时间显示)分配了一个窗口类——Shell_TrayWnd,而且激活时是固顶从一些位置开始激活的,不是随着程序打开与否而变换的。所以这个方法也就没法实现选定当前任务在任务栏列表中的位置,也就没法像TW或者Explorer中那样子用鼠标手势切换到另外的标签页了。
五、自己做一个软件实现选定当前任务在任务栏中的位置的可能:
因为用自带的Shell和键盘动作是无法实现选定在任务栏中的当前任务的,所以我考虑用一些脚本(VBS)或者一个软件能否实现。于是搜索Shell_TrayWnd,但始终无法找到此功能的代码,于是只能找能列出任务栏顺序任务的软件,毕竟只要知道顺序了就可以实现切换,于是找到了一些源代码:
做一个自己的任务栏:用delphi编写,我已经运行并生成EXE成功,但功能不完善,而且上面的任务顺序也跟自带任务栏的不一样,所以不用;
还找了vb和vc的Taskbar相关代码,但都无法编译成功。放弃。
五、找一款任务管理软件进行切换的可能性:
由于问题出在任务的顺序上,所以我首先想到找出一款跟任务栏中的顺序一样的任务管理软件,并且可以用快捷键进行选择并激活。我看了看系统自带的任务管理器(用Ctrl+Shift+Esc调出的那个),里面又是一个不同的顺序。
于是我开始了搜索类似于“任务管理软件”“任务切换软件”“Taskbar切换”的关键字,
TaskSwitch:任务切换,对任务进行预览,任务顺序与自带的Alt+Tab调出的Taskbar一样,简单讲是Taskbar的加强软件,没用。
EasyGoBack:在Windows操作系统中浏览文件夹时也能用上鼠标手势功能,我已通过Strokeit实现,而且不止是浏览文件夹有鼠标手势,所以这个也不需要。
WinFlip:可实现像Vista那样3D效果切换任务,替换Alt+Tab,但我并不喜欢炫丽的效果,xp都是尽量简洁朴素的,而且这个东西导致我系统死机了一回,所以坚决不再用了。
MacVision_v.8.206:说明上是写替换Taskbar,其实软件模拟的只是Mac中的一个启动菜单而不是任务栏。
Taskbar Executive1.2:工具栏加强软件,可以将工作栏每个执行的程序分类集中管理,让工作栏不会因为执行许多程序造成拥挤不堪的现象。但我安装不上,且被ESS查出是病毒,不用。
onefinger task switch:可以让F1-F12替换Alt+Tab,然后用箭头键选择切换软件,且任务顺序与自带任务栏不同,不用。
后来想想这样子找出的只是替换或增强Alt+Tab功能的软件,于是搜索任务栏排序之类的软件,有以下几款:
Taskbar++:可以在任务栏上拖曳各个页面的按钮,还可以自定义排列按钮时的提示音、设置按钮的颜色等,但必须按住Alt,而且第一次拖的时候还会失效,第二次才能成功,没用。
TaskArrange1.1.1:在一个界面里进行操作,对任务列表中的任务进行排序,操作还不是实时的,必须点击OK才能生效。不用。
Taskbar button manager:1M多,太大了,需要安装,可在一个界面上实现排序,也可直接拖拽排序,并且可隐藏程序,但因为软件太大,不如Taskbar Shuffle快捷。
TaskbarManager:不到1M,绿色,安装文件是一个压缩包,解压就行,同Taskbar button manager类似,可在一个界面上实现排序,也可直接拖拽排序,隐藏程序,并且可保存顺序列表和载入顺序列表,并让他在设定的时间内刷新自动重新排序,这样可以实现不变的任务列表顺序。但似乎用不到这些,所以也不用。
Taskbar Shuffle:没有软件界面来操作任务栏,只有通过拖拽对任务进行排序,非常小巧和方便,并且意外收获了一个我都没想过的功能,用鼠标中键关闭任务栏中的任务,太好了,这样操作系统的任务更像操作浏览器中的Tab了。于是这个程序立即成为了我Bibei(必备)文件夹中的开机自启动程序了。
thumbwin:窗口最小化的微缩图效果,说是可替代任务栏,但我觉得一点用处也没有。
Mousetab:似乎是用鼠标左右键实现切换任务的,以前可用,但现在不知为何不可用了。
再后来想想好像用任务切换(Alt+Tab)替代软件或者任务栏图标排序软件似乎都无法实现激活后切换。我似乎应该直接找个任务栏替换的软件,本来我还有点担心Windows API函数不够让软件取得任务栏的任务顺序,但看到上面那几个的任务栏顺序管理软件就不怕了。最终我找到了PodXP中的Minitask并成功实现了我要的功能。见以下的设置:
鼠标手势篇
PodXP中minitask的设置:
minitask简介:minitask只要开机随机启动,则任务顺序与系统自带的任务栏是一样的(这与我一直在用的托盘图标隐藏软件PS Tray Factory以前的版本一样,无法识别之前开启的任务顺序,如果不是开机启动,则无法隐藏之前开启的文件图标),且有多种样式可供选择,并且,它把自带任务栏中不显示的一些窗口,比如“我的电脑”属性页也都显示出来了,所以用起来比自带的更方便,不用再像以前那样Win+D回到桌面再去找那个属性页窗口。但minitask会把千千静听的任务也显示在任务栏中,会使任务栏的任务拥挤不堪。如果minitask能够设置排除一些任务在任务栏显示那就更完美了。
minitask中任务切换方法:
切换到右边的任务:minitask自带了一个切换到下一个任务的快捷键:AltTab热键,可设置为Alt+Tab或者Alt+space或者Alt+右箭头,为了不与系统自带的发生冲突,我选择了Alt+方向键右。
切换到左边的任务:minitask没有自带切换到左边任务的快捷键,但通过系统按键可以实现:在podxp的任务栏上点一下,激活一下,可以看到激活后是tab是定位在当前任务栏上的(这是最关键的地方,如果不是定位在当前激活的窗口上,则与系统自带的就一样了,无法实现可视的切换任务了),然后按tab,可以看到tab往右边移动,按shift+tab就可以往左边移动,所以可以证明这个方案是可行的,现在我们就要实现激活。
hoekey的设置:hoekey是用来激活的,在hoekey.ini中加上一句@p=FocusMsg|#32770 ;就可以实现Alt+P(podxp)激活Podxp的任务栏窗口了。(我用strokeit中带的窗口类检测工具发现Podxp只用了一个类——#32770,所以一旦新建了另外的Pod,则无法用hoekey的快捷键定位到minitask,即便删掉了那个pod,仍旧不行,只能重启PodXP。所以要注意不可新建别的Pod,不然都失效了)
strokeit的设置:
切换到右边的任务:
1、在通用动作中新建一个“切换到任务列表的下一个程序”(可随意设置,这样只是为了好记和好管理),手势选择“Right-Up”;
2、新建一个命令“Podxp任务栏后面的窗口”,配置“按键-热键”中发送“ALT + RIGHT”,此时即可实现用“Right-Up”的手势切换到任务栏右边的程序了。
切换到左边的任务:
1、在通用动作中新建一个“切换到任务栏的上一个程序”(可随意设置,这样只是为了好记和好管理),手势选择“Left-Up”;
2、新建一个命令“Podxp任务栏前面的窗口”,配置“按键-发送按键动作”中发送以下连续的按键到窗口:[Alt_DOWN]p[Alt_UP][Shift_DOWN][Tab][Shift_UP][Enter_DOWN]。这些按键的意思是先激活Podxp的任务栏,然后切换到左边的任务,然后shift松开,按Enter,即可实现用“Left-Up”的手势切换到任务栏左边的程序了。
这样整个系统的任务、浏览器、CuteFtp(我对CuteFtp也使用了手势)、Explorer就均可实现鼠标手势切换任务/标签了,有点偏执了但确实很方便,现在有个最大的问题是TW中的鼠标手势是自带的,我又不想用Strokeit中的替换(因为感觉会慢些),这样就不得不设置在TW程序中忽略Strokeit的鼠标手势,于是在冲浪时就不能通过鼠标手势切换到别的任务了。而Strokeit也没有设置某个按键按下时,可以让手势强制起作用,所以这个问题估计只能用Strokeit替换TW自带手势来解决。暂时先放着吧,或者用我下面的“热键篇”中提供的用热键的方法来切换。
热键/快捷键篇
启动程序的热键:我已经在hoekey中设置了F1调出RunDialog,即F1等同于Win+Run,快速启动程序,这样子不会每次都按错成Win+E。(本来是想设置为Ctrl+Shift的,但hoekey似乎不允许这样子的快捷键)
切换程序的热键:启动程序有了热键了,现在就是切换程序需要热键了,我的设想是通过按住Ctrl+,和Ctrl+.来实现切换PodXP任务栏中的顺序(其实也可用ctrl+l和ctrl+;来做快捷键,但上一种方法的键盘上有个<和>符号,似乎更直观):
hoekey.ini的设置:
切换到右边的任务:在hoekey.ini中加一句:“^.=Keys|\a\k\A ;”注意不是alt\l,这里的按下alt和放开alt是区分开的,分别用\a和\A表示,这样就可以实现用Ctrl+.实现往右切换程序。
切换到左边的任务:在hoekey.ini中加一句:“^,=Keys|\ap\A\s\t\S\n(这句是按照strokeit中的设置的),但这样会发现是先激活后再一次按ctrl+,才会切换,每次都必须按两次。暂时未找到解决办法,先留着这个问题,等有时间时再研究研究。
关于刚才提到的一点点“启动程序的热键”,其实启动程序还包括启动常用程序(常用程序总不需要每次都在Run中输入吧)和发送特定信息的程序(比如google搜索某个关键词),也有热键和鼠标手势两种方式,我将会另外开文详解。(单单写这篇文章花了我一天时间,而前面对鼠标手势的设置,更是花了我三天左右的时间,不知道接下来把那个热键的问题搞定还要再花多久……)
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Ctrl+Alt+Del你知多少?
一分钟让你变电脑高手!win键的妙用,许多人只会4种,太丢人了
UC头条:Win11几个设置小技巧,让你的电脑更加好用
附使用及记忆方法,Win11 常用快捷键一览
一鼠走天下(StorokeIt)-兼谈电脑操作的便捷性
Win10中有哪些你从不知道却非常实用的技能
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服