YueFeng 发表于 2020-4-8 20:32:23

autohotkey可否替换autohook

AHK文件中添加以下代码:
#IfWinActive ahk_exe acad.exe
      !l::send,{Esc}LINE{space}
      !p::send,{Esc}PLINE{space}
      !c::send,{Esc}COPY{space}
      !o::send,{Esc}CIRCLE{space}
      !m::send,{Esc}MIRROR{space}
      !i::send,{Esc}INSERT{space}
      !b::send,{Esc}BLOCK{space}
      !a::send,{Esc}ARRAY{space}
      !e::send,{Esc}PEDIT{space}M{space}

               
#IfWinActive


acad打开时,这些快捷键才起作用。
以第2行为示意:按下alt+l键,发送键 ESC 中止当前操作 输入LINE字符 再加空格。

烟盒迷唇 发表于 2020-4-9 15:54:26

AUTOHOTKEY也可以用在CAD里吗

YueFeng 发表于 2020-4-9 17:00:25

设定的快捷键,只在autocad中启用。

gzcsun 发表于 2022-3-31 12:52:46

还是autohook好。

YueFeng 发表于 2022-9-27 20:39:09

switchime(ime := "A")
{
if (ime = 1)
    {
      DllCall("SendMessage", UInt, WinActive("A"), UInt, 80, UInt, 1, UInt, DllCall("LoadKeyboardLayout", Str,"00000804", UInt, 1))
    }
else If (ime = 0)
    {
      DllCall("SendMessage", UInt, WinActive("A"), UInt, 80, UInt, 1, UInt, DllCall("LoadKeyboardLayout", Str,, UInt, 1))
    }
   else If (ime = "A")
    {
      ;ime_status:=DllCall("GetKeyboardLayout","int",0,UInt)
      Send, #{Space}
    }
}


;在AutoCAD窗口下应用以下快捷键。
#IfWinActive ahk_exe acad.exe

XButton1::F3
XButton2::F8

!q::
    switchime(0)
    send,{esc}qsave{space}         
return
!w::
    switchime(0)
    send,{esc}wblock{space}      
return
!e::
    switchime(0)
    send,{esc}explode{space}      
return
!r::
    switchime(0)
    send,{esc}rename{space}      
return
!t::
    switchime(0)
    send,{esc}trim{space}         
return

!a::
    switchime(0)
    send,{esc}array{space}         
return
!s::
    switchime(0)
    send,{esc}stretch{space}      
return
!d::
    switchime(0)
    send,{esc}dist{space}         
return
!f::
    switchime(0)
    send,{esc}find{space}         
return
!g::
    switchime(0)
    send,{esc}group{space}         
return

!z::
    switchime(0)
    send,{esc}zoom{space}o{space}
return
!x::
    switchime(0)
    send,{esc}explode{space}      
return
!c::
    switchime(0)
    send,{esc}copy{space}         
return
!v::
    switchime(0)
    send,{esc}view{space}         
return
!b::
    switchime(0)
    send,{esc}block{space}         
return

!y::
    switchime(0)
    send,{esc}breakatpoint{space}
return
!u::
    switchime(0)
    send,{esc}ucs{space}         
return
!i::
    switchime(0)
    send,{esc}insert{space}      
return
!o::
    switchime(0)
    send,{esc}offset{space}      
return
!p::
    switchime(0)
    send,{esc}pline{space}         
return

!h::
    switchime(0)
    send,{esc}dtext{space}         
return
!j::
    switchime(0)
    send,{esc}join{space}         
return
!k::
    switchime(0)
    send,{esc}dimaligned{space}   
return
!l::
    switchime(0)
    send,{esc}lengthen{space}      
return

!n::
    switchime(0)
    send,{esc}dimscale{space}      
return
!m::
    switchime(0)
    send,{esc}move{space}         
return

YueFeng 发表于 2022-9-27 20:40:32

安装Autohotkey V1 版本后,把上面帖子的内容,另存为扩展为ahk的文件。双击。
可参内容修改。

pxt2001 发表于 2023-4-1 10:23:55

本帖最后由 pxt2001 于 2023-4-1 14:56 编辑

Autohotkey 似乎稳定性不好,经常异常退出导致快捷键起不到作用。
现在都有Autohotkey 2版本了 ,楼主的代码能否匹配新版本?

YueFeng 发表于 2023-4-10 16:58:04

pxt2001 发表于 2023-4-1 10:23
Autohotkey 似乎稳定性不好,经常异常退出导致快捷键起不到作用。
现在都有Autohotkey 2版本了 ,楼主的代 ...

没有写 V2的。V1稳定性还行。偶有异常。
页: [1]
查看完整版本: autohotkey可否替换autohook