Windows elliType软件
请访问以下Microsoft网站:Windows elliType软件,windows,keyboard-shortcuts,autoit,explorer,Windows,Keyboard Shortcuts,Autoit,Explorer,请访问以下Microsoft网站: 选择键盘,然后进行其他适当选择以下载最新的IntelliType软件 步骤2:启动键盘向导,并更改分配 在“控制面板”中打开键盘项 在Windows 7或Windows Vista中,单击开始按钮,在开始搜索框中键入键盘,然后在程序列表中单击键盘(或Microsoft键盘) 在Windows XP和早期版本的Windows中,单击开始,单击运行,键入控制键盘,然后单击确定 在“关键点设置”选项卡上,选择要更改的关键点 要更改命令或程序分配,请单击“配置
- 在Windows 7或Windows Vista中,单击开始按钮,在开始搜索框中键入键盘,然后在程序列表中单击键盘(或Microsoft键盘)
- 在Windows XP和早期版本的Windows中,单击开始,单击运行,键入控制键盘,然后单击确定
- 通过添加适当的参数,可以指定程序对特定文档、网站或其他项目打开。例如:
- iexplore.exe:启动Microsoft Internet Explorer,并打开MSN.com网站
- word.exe mydoc.doc:启动Microsoft word并打开mydoc文件
- 使用“还原默认值”删除所有自定义设置,并重新启动所有分配
- 在“自定义密钥设置”下,可以使用“选项”重命名每个银行,也可以使用“添加”为该程序添加自定义密钥分配程序
- 可以使用“分配/管理宏”按钮分配或更改宏。有关更多信息,请参阅帮助
可能会给你更多的指导
此外,还显示了它适用于VBScript,并给出了一个VBScript示例。我不会麻烦复制/粘贴所有内容,这只是我上面所写内容的备份。看,我不知道AutoIt,但你不能在
trigger()中调用action()
而不是永远循环吗??)我很确定没有办法给浏览器本身添加快捷方式,如果你正在寻找快捷方式,你必须使用全局热键;如果不可能,我会保留我的剧本。感谢您的回答。如果您多次按Ctrl+T,则使用操作
外部触发器
是一种避免并行启动的简单方法。使用AutoIt,脚本必须循环才能继续触发热键,因此必须执行while/wend,至少我可以将它用作互斥对象^^^,如果多次按Ctrl+T,使用触发器外的操作是避免并行启动的一种简单方法。好吧,但是,对不起,trigger()
仍然会在每次按热键时被调用,对吧,即使你在循环内?这样做不是更简单、更有效:Func trigger()
↵ <代码>本地静态$DoingAction=False
↵ <代码>如果不是$DoingAction,则↵ <代码>$DoingAction=True↵ <代码>操作()↵ <代码>$DoingAction=False↵ <代码>结束如果↵ <代码>EndFunc(替换'↵' 使用换行符-显然,在AutoIt中无法将多个语句放在一行中)。脚本必须循环才能继续触发热键,因此,while/wend是必需的,如果您这样说,我肯定相信您。。。有了这样的睡眠,它可能不会消耗很多资源。瞧,我不知道AutoIt,但你能不能在trigger()中调用action()
,而不是永远循环??)我很确定没有办法给浏览器本身添加快捷方式,如果你正在寻找快捷方式,你必须使用全局热键;如果不可能,我会保留我的剧本。感谢您的回答。如果您多次按Ctrl+T,则使用操作
外部触发器
是一种避免并行启动的简单方法。使用AutoIt,脚本必须循环才能继续触发热键,因此必须执行while/wend,至少我可以将它用作互斥对象^^^,如果多次按Ctrl+T,使用触发器外的操作是避免并行启动的一种简单方法。好吧,但是,对不起,trigger()
仍然会在每次按热键时被调用,对吧,即使你在循环内?这样做不是更简单、更有效:Func trigger()
↵ <代码>本地静态$DoingAction=False
↵ <代码>如果不是$DoingAction,则↵ <代码>$DoingAction=True↵ <代码>操作()↵ <代码>$DoingAction=False↵ <代码>结束如果↵ <代码>EndFunc(替换'↵' 使用换行符-显然,在AutoIt中无法将多个语句放在一行中)。脚本必须循环才能继续触发热键,因此,while/wend是必需的,如果您这样说,我肯定相信您。。。有了睡眠,它可能不会消耗很多资源
#include <Array.au3>
#include <WinAPI.au3>
; Init - stop
Global $stop = False
HotKeySet("{F4}", "stop")
Func stop()
If $stop Then Exit
$stop = True
EndFunc
; Init - trigger
Global $trigger = False
HotKeySet("^t", "trigger")
Func trigger()
$trigger = True
EndFunc
; Event loop
While Not $stop
Sleep(100)
If $trigger Then
action()
$trigger = False
EndIf
WEnd
Func action()
ConsoleWrite(@CRLF)
; Check active window (explorer only)
Local $handle = WinGetHandle("[ACTIVE]"), $class = _WinAPI_GetClassName($handle)
ConsoleWrite("- Window:"&$class&" ")
If $class <> "CabinetWClass" Then Return
; Get object linked to window
Local $shell = ObjCreate("Shell.Application"), $window = 0
For $object In $shell.Windows()
If $object.HWND() = $handle Then
$window = $object
ExitLoop
EndIf
Next
If $window = 0 Then Return
; Check active component (right filelist panel only)
Local $control = ControlGetFocus($handle)
If $control <> "DirectUIHWND3" Then Return
; Get selection (files selected in the right panel)
Local $selected[1] = [0]
For $element In $window.Document.SelectedItems()
If $element.IsFolder Or $element.IsLink Then ContinueLoop
Local $path = $element.Path
For $i = 1 To $selected[0]
If $path = $selected[$i] Then ContinueLoop 2
Next
$selected[0] = $selected[0]+1
ReDim $selected[$selected[0]+1]
$selected[$selected[0]] = $path
Next
; Action : ###############################
EndFunc