; ~ 테스트 AutoHotkey에 스크립트 소스 코드 템플릿 모델의 작은 부분 .ahk

;

 

; ~ 테스트 AutoHotkey에 스크립트 소스 코드 템플릿 모델의 작은 부분 .ahk

 

; ~이 파일에 코드 한 줄 이상의 소량 넣어주세요, 실제 시험은,
; ~ 테스트 결과, 코드 기능까지 달성 할 수있을 때 다음 자신의 스크립트 코드를 파일로 복사하는 방법을 보려면
, ~ 일정한 테스트, 지속적인 개선, 지속적으로, 지속적인 최적화를 정제
; ~ 코드 패키지 라벨 또는 (객체) 이름의 서브 루틴이나 함수 기반의 프로세스에 따라서 향후 유사한 코드의 재사용을 촉진
; ~ 바랍니다 SciTE4AutoHotkey 스크립트 편집기 바로 가기 키 <F5> 및 테스트 스크립트 코드를 실행
~ 마이너스 소스 코드 또는 바로 가기 키 숫자 키패드 주석 블록 Ctrl 키 + Q의 선택된 블록을;

TestAutoHotkeyCode 시험 조각 _ 1 함수 ()
{
WinActivate, SciTE4AutoHotkey ahk_class의 정확한 SciTEWindow ahk_exe SciTE.exe
WinWaitActive, SciTE4AutoHotkey ahk_class의 정확한 SciTEWindow ahk_exe SciTE.exe
송신, FS {} {AltDown AltUp}
; ========== 다음 줄의 바로 가기 키의 시작 후 F5 키를 눌러 테스트 코드를 실행 ==========

SetTimer, RunExeFile 프로그램 _03 -100 실행
활성 창 _04,100 SwitchToThisWindow, SetTimer를
_06,100 제어 할 수 SetTimer, ControlSend 보내기 시뮬레이션 키 입력을
SetTimer, 제어 _07,100에 ControlClick 보내기 마우스 버튼을 누르거나 마우스 휠 이벤트
SetTimer, SetTimerDelete 비활성화 모든 타이머 삭제 자동 반복 사이클 동작 루틴 _08,100

; ========== 광고 테스트 코드 ============== 끝에 단축키 F5를 실행하여
}

; ~ http://www.autoahk.com/archives/16127
;
; ~ https://gitee.com/weiyunwps618/codes/h45dz2c31nrqwtm8ufxyv57
; ~ https://www.cnblogs.com/delphixx/p/11812580.html

이 ConfigThisScript 스크립트 파라미터 _ 초 함수 () 함수 이름하여 본문의 부호로서 기능 함수를 호출
TestAutoHotkeyCode 테스트 코드 프래그먼트 _ 제 함수 ()
핫키의 F5 새로운 스크립트 예로 _ 처음 세 함수의 현재 실행중인 인스턴스를 대체; 만들고 핫 키 입력을 사용자가 핫키 기능 바로 지적 수행 단축키 활성화.
반환,이 스크립트를 누르면 단축키 바로 가기 키를 기다립니다 스크립트 있도록 설정되어 있기 때문에, 다음 스크립트가 종료되지 않습니다

또한 _ 현재 스크립트의 새 인스턴스 세 번째 기능 (인스턴스)를 실행
{
다시로드
}

이 ConfigThisScript 스크립트에 대한 매개 변수 _ 두 번째 함수 ()
{
# SingleInstance, 포스,이 스크립트가 자동으로 실행 다시 이전 인스턴스 실행을 대체하고있다.
#Persistent (사용자 닫거나 ExitApp을 경험까지있다) 지속 스크립트 실행을 할 수 있습니다.
#NoEnv는, 변수 (모든 새로운 스크립트 권장) 빈 환경 변수인지 여부를 확인하지 않습니다.
#WinActivateForce; 필수 활성 윈도우 방법. 작업 표시 줄 버튼이 깜박 중지합니다.
; ~ #NoTrayIcon를, 트레이 아이콘이 표시되지 않습니다.
;에 의해 지원되는 응용 프로그램 유형에 지정된 ~ #Warn ;. WarningMode 모든 경고
SetWorkingDir는, % A_ScriptDir %, 현재 작업 디렉토리의 스크립트를 변경합니다.
DetectHiddenWindows는,에, 설치 스크립트가 숨겨진 창 "을 참조하십시오"할 수 있습니다.
SetTitleMatchMode, 2, 위치에 윈도우 타이틀 매치 모드는 WinTitle를 포함해야합니다.
SendMode, 입력, SendInput을 일반적으로 더 빠르고 신뢰할 수있는 키 입력을 보낼 때 사용자의 포함을 방지하기 위해 전송 중에 물리적 키보드 또는 마우스 활동을 버퍼.

CoordMode, 마우스, 화면
CoordMode, 픽셀, 화면
CoordMode, 도구 설명, 스크린
ListLines, 오프
SetBatchLines, -1
SetStoreCapsLockMode,에

;~ SetBatchLines,
;~ SetKeyDelay,
;~ SetWinDelay,
;~ SetControlDelay,
}

; ========== 函数定义代码块段落代码从下一行开始,接下来集中定义各类函数,函数名以两位数字序号后缀结尾 ==========

RunExeFile运行程序_03()
{
IfWinNotExist,记事本 ahk_class Notepad
Run,notepad
}

SwitchToThisWindow激活窗口_04()
{
IfWinNotActive,记事本
{
;~ WinActivate [, WinTitle, WinText, ExcludeTitle, ExcludeText]
WinGet, WinID, ID,记事本
DllCall("SwitchToThisWindow", "UInt", WinID, "UInt", 1)
;~ WinGetActiveTitle,WinActiveTitlekp
;~ IfInString,WinActiveTitlekp,窗口标题
}
}

ControlFocus设置焦点到指定控件_05()
{
;~ ControlFocus [, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
}

ControlSend发送模拟键击到控件_06()
{
IfWinActive,记事本
{
IfWinNotExist,打开 ahk_class #32770, 地址
{
ControlSend, Edit1,{CtrlDown}o{CtrlUp},记事本 ahk_class Notepad
}
}
}

ControlClick发送鼠标按钮或鼠标滚轮事件到控件_07()
{
;~ IfWinActive,记事本
;~ ControlClick [, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText]
}

SetTimerDelete禁用并删除所有Timer自动重复周期运行子程序_08()
{
IfWinExist,记事本 ahk_class Notepad
{
IfWinActive,打开 ahk_class #32770, 地址
{
SetTimer,RunExeFile运行程序_03,Delete
SetTimer,SwitchToThisWindow激活窗口_04,Delete
;~ 不要使用某个功能函数时只需注释掉调用代码即可,无需注释函数体定义部分的代码
;~ SetTimer,ControlFocus设置焦点到指定控件_05,Delete
SetTimer,ControlSend发送模拟键击到控件_06,Delete
SetTimer,ControlClick发送鼠标按钮或鼠标滚轮事件到控件_07,Delete
SetTimer,SetTimerDelete禁用并删除所有Timer自动重复周期运行子程序_08,Delete

ToolTip,并发运行脚本测试完毕
SetTimer, RemoveToolTip定时关闭置顶提示窗口_09, 5000
}
}
}

; 让ToolTip提示在一段时间后消失
RemoveToolTip定时关闭置顶提示窗口_09:
SetTimer, RemoveToolTip定时关闭置顶提示窗口_09, Off
ToolTip
return

无条件终止此脚本()
{
ExitApp
}

; ===== 此脚本到此行结束 =====

 

 

 

 

 

;~ 【管理员】徐晓亮(595076941)
;~ 有了此QQ群和代码测试模板和百度这3个法宝就可以玩AutoHotkey脚本源代码
;~ 【管理员】徐晓亮(595076941)
;~ 就可以轻轻松松的玩AHK源代码了
;~ 【管理员】徐晓亮(595076941)
;~ 开始接受ahk的SciTE了,先搜集大量小工具(类似AHKInfo 1.3.5)或者用Delphi或Visual Studio 自制一些有特殊要求的小工具软件并手动集成到SciTE4AutoHotkey的工具栏中(最好有2行工具栏用于存放常用自制工具,这样在写源代码时比较方便快捷),最后还是要注意资源搜集,资源备份,资源全文检索,全网源代码搜索

;~ 小部分AutoHotkey源代码片段测试模板2019年9月22日.ahk

;~ 此脚本用于测试执行一行或多行AHK脚本源代码的效果
;~ 此脚本最后修改于2019年9月22日20时03分
;~ 把此源代码复制到SciTE4AutoHotkey文本编辑器中
;~ 在SciTE4AutoHotkey文本编辑器窗口中按快捷键F5运行脚本
;~ 在SciTE4AutoHotkey文本编辑器窗口中按快捷键Ctrl+Break终止此脚本运行
;~ 按快捷键F9运行需要测试的代码
;~ 选中源代码块后按快捷键 Ctrl+Q 注释代码块
;~ 请使用 "星雨朝霞" 制作的 "AHKInfo 1.3.5.ahk" 窗口信息抓取工具来获取控件操作源代码和控件的ClassNN类别名称

; 源代码作用:并发运行AHK脚本演示,脚本测试模板 打印日期:2019年10月10日 源代码作者:徐晓亮(aahk6188) 第X页【共Y页】


;~ Sleep,500
;~ WinClose, 桌面控制 ahk_class SDL_app ahk_exe SunloginClient.exe,
;~ Sleep,500
;~ WinKill, 桌面控制 ahk_class SDL_app ahk_exe SunloginClient.exe,
;等待指定标题窗口出现
;~ WinKill, 向日葵远程控制 ahk_class SDL_app ahk_exe SunloginClient.exe,

;~ WinKill, 桌面控制 ahk_class SDL_app ahk_exe SunloginClient.exe,
;~ Sleep,500
;~ Process,Close,SunloginClient.exe

;~ IfExist,C:\Program Files (x86)\Oray\SunLogin\SunloginClient\SunloginClient.exe
;~ Run,C:\Program Files (x86)\Oray\SunLogin\SunloginClient\SunloginClient.exe
;~ Sleep,5000
;~ IfWinNotExist,,连接服务器成功
;~ MsgBox,99999999999

;等待指定标题窗口出现
;~ Process,Exist,Executor.exe
;~ if (%ErrorLevel%=0)
;~ {
;~ MsgBox
;~ ToolTip,2222a
;~ }

;~ SetTimer,RunExeFile运行程序_03,-500
;~ SetTimer,SwitchToThisWindow激活窗口_04,500
;~ SetTimer,ControlSend发送模拟键击到控件_06,500
;~ SetTimer,ControlClick发送鼠标按钮或鼠标滚轮事件到控件_07,500
;~ SetTimer,SetTimerDelete禁用并删除所有Timer自动重复周期运行子程序_08,500

;~ 经过试验得知运行程序每次都成功所以这里用负数-500表示0.5秒后运行定时器函数
;~ 单次运行 [v1.0.46.16+]: 使用负的 周期 来表示计时器只运行一次.
;~ 例如,指定 -100 将会从现在开始的 100 ms 后运行计时器,
;~ 然后就像使用 SetTimer, Label, Off 那样禁用计时器。
;~ 不要使用某个功能函数时只需注释掉调用代码即可,无需注释函数体定义部分的代码
;~ SetTimer,ControlFocus设置焦点到指定控件_05,500

;~ 并发运行的AutoHotkey脚本真机实际测试模板参考20191010.ahk

;~ 在SciTE4AutoHotkey窗口中选中代码块并按<Ctrl>+Q 注释代码
;~ 在SciTE4AutoHotkey窗口中按<F5>运行脚本
;~ 按<F6>测试AHK代码片段
;~ 按<Ctrl>+<F6>无条件终止此脚本
;~ 按<F7>重新启动此脚本并测试代码片段
;~ 在SciTE4AutoHotkey窗口中按<Ctrl>+<Break>终止运行脚本

;~ 2019年10月10日
;~ 徐晓亮(aahk6188)
;~ 操作系统测试环境: Windows 7 专业版 32位 系统 On Website https://msdn.itellyou.cn/
;~ AHK系统测试环境: AutoHotkey_1.1.31.00_setup.exe On Website https://www.autohotkey.com/
;~ 并发运行可以防止错过对一些窗口的操作
;~ 并发运行可以精确等待操作时机的出现
;~ 并发运行可以使脚本运行更流畅,可以有效防止脚本应等待窗口或控件的出现而出现卡死现象

;~ Hotkey,F6,Hotkey_F6定义F6热键_01 ;创建并启用热键,当用户输入热键时立即执行热键所指向的函数。
;~ Hotkey,^F6,无条件终止此脚本
;~ Hotkey,F7,重新启动此脚本并测试代码片段
;~ 请在SciTE4AutoHotkey窗口中按<F5>运行脚本,, 在SciTE4AutoHotkey窗口中按<Ctrl>+<Break>终止运行脚本
;~ MsgBox,按<F6>快捷键打开记事本

;显示热键提示信息窗口并暂停脚本执行直到用户按确定按钮控件。

;~ 接下来定义函数名是“ConfigThisScript设置此脚本的参数_01() ”的函数,
;~ 便于用SetTimer定时器或直接通过函数名调用此函数,
;~ 函数类似于子程序 (Gosub), 不过它可以从调用者那里接受参数 (输入).
;~ 同时, 函数还可以返回值给其调用者.
;~ 函数可以减少代码书写量(代码复用,代码重用),只在一处统一定义函数可以有效防止代码不一致出错,
;~ 只在一处定义便于今后修改维护,实现模块化积木化编程,
;~ 把大的任务用SetTimer定时器函数的形式切割细分为很多小功能函数使得比较困难的事情容易实现,
;~ 在工作、学习、生活、社交、人生规划等方面也可以用笔在A4纸上切割和细分,以此类推,触类旁通。

;
; 本文的最后修改日期是 公元2019年11月07日
; 本文的网址是 https://gitee.com/weiyunwps618/codes
; 本文的网址是 https://www.cnblogs.com/delphixx
; 晓亮(weiyunwps618)的腾讯QQ邮箱地址是 [email protected]
; 晓亮(weiyunwps618)的中国移动手机号码是 138####5488 )
; 此AHK脚本的测试环境是 Windows 7 Pro SP1 VL 和 AutoHotkey v1.1.30.01
;

추천

출처www.cnblogs.com/delphixx/p/11812580.html