zoukankan      html  css  js  c++  java
  • [A4]更快的使用你的键盘:AutoHotkey(2)

             经过自己一些时间的实践与反馈,又有了许多心得,因此再为这个写一篇文章。

             第一篇文章里的两个问题基本得到了解决:( [A2]更快的使用你的键盘:AutoHotkey

             第一个问题:中文乱码问题,一种方案是采用剪切板来实现,另一种是让按键对应于一种输入法的按键顺序。Autohotkey所发送的本来就是一个一个按键操作,这一点我在上一次写文章的时候并没有体会清楚。

             第二个问题:窗口最大最小的切换,最后找到了获取这个状态的函数。用WinGet, Style, Style, A得到当然窗口的状态,用语句Style & 0x1000000获得窗口是否处于最大化状态。具体见最后贴的代码。

            

             另外,我上论坛浏览了一下别人分享的代码,看到了许多写得很棒的代码。比如说,有一个可以进行自动扫雷,结果我电脑上现在的扫雷记录:高级是14...详见http://ahk.5d6d.com/viewthread.php?tid=1921&extra=page%3D4%26amp%3Borderby%3Dreplies

             最后把我自己写的代码贴出来,前面的两个include文件是从AutoHotkey论坛上找到的,因此未贴出来。另外,我是一个大四学生,因此主要是针对我自己的日常操作。 希望能对大家有所帮助。

     

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    ;AutoHotkey配置文件

    ;by JerryHe   Nov 29,2009

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    #include UseRBottomAttF4.ahk

    #include OnekeyActiveDirofSoftware.ahk

    ;设置启动目录

    PROGRAMDIR:="D:\MyProgramFiles"

    ;按住Alt,类似Vim方向操作

    LAlt & j::send {down}

    LAlt & k::send {up}

    LAlt & h::send {left}

    LAlt & l::send {right}

     

    #n::run gvim

    #c::run PowerCalc.exe

     

    #m::

    WinGet, Style, Style, A

    if (Style & 0x1000000)

    {

        WinRestore,A

    }

    else

    {

        WinMaximize,A

    }

    return

     

     

    #o:: ;切换到Lingoes

    IfWinExist Lingoes

    {

        WinActivate

    }

    else

    {

        Run %PROGRAMDIR%\Lingoes

        WinWait Lingoes

        WinActivate

    }

    return

    #p:: ;切换到Snagit

    IfWinExist Snagit

    {

        WinActivate

    }

    else

    {

        Run %PROGRAMDIR%\Snagit

        WinWait Snagit

        WinActivate

    }

    return

     

     

    ;常用目录启动

    #7::run %PROGRAMDIR%\startDesktop.bat

    #8::run %PROGRAMDIR%\startWorkdir.bat

    #9::run %PROGRAMDIR%\startCourse2009dir.bat

    #0::run %PROGRAMDIR%\startThisdir.bat

     

    ;常用组合键

    RShift & m:: ;Word里插入Mathtype字符

    SetKeyDelay,50

    send {alt}YY01

    return

     

    RShift & f:: ;Create a new folder

    SetKeyDelay,50

    send {alt}FWFW

    return

     

    RShift & d:: ;回退目录

    send cd.. {Enter}

    return

     

  • 相关阅读:
    POJ 3630 Phone List/POJ 1056 【字典树】
    HDU 1074 Doing Homework【状态压缩DP】
    POJ 1077 Eight【八数码问题】
    状态压缩 POJ 1185 炮兵阵地【状态压缩DP】
    POJ 1806 Manhattan 2025
    POJ 3667 Hotel【经典的线段树】
    状态压缩 POJ 3254 Corn Fields【dp 状态压缩】
    ZOJ 3468 Dice War【PD求概率】
    POJ 2479 Maximum sum【求两个不重叠的连续子串的最大和】
    POJ 3735 Training little cats【矩阵的快速求幂】
  • 原文地址:https://www.cnblogs.com/shyanye/p/1621799.html
Copyright © 2011-2022 走看看