引言
AutoHotkey 是一款功能强大的自动化工具,它可以帮助你通过编写脚本来自动化 Windows 上的各种任务,从而提高工作效率。今天,我要介绍一个特别的 AutoHotkey 脚本生成器,它可以让你轻松创建脚本,一键打开指定的网页到你想要的位置和大小,并保持窗口始终置顶。
在日常工作中,我们经常需要访问某些网页,比如监控仪表盘、在线工具或参考资料。每次打开这些网页后,手动调整窗口位置和大小,然后设置置顶,非常耗时且繁琐。有了这个脚本生成器,你可以一次性设置好窗口的属性,之后只需运行脚本,即可自动完成所有操作,节省大量时间。
为什么需要这个生成器?
想象一下,你是一位远程工作者,需要时刻关注一个实时数据仪表盘。这个仪表盘必须始终显示在屏幕的右上角,且不能被其他窗口覆盖。手动操作不仅费时,还容易出错。而这个生成器可以让你轻松实现自动化,解放你的双手,让你专注于更重要的事情。
此外,这个工具特别适合那些不熟悉编程的用户。传统的 AutoHotkey 脚本编写需要一定的技术门槛,而这个生成器通过图形界面(GUI)简化了整个过程,让每个人都能轻松上手。
生成器的特点
这个 AutoHotkey 脚本生成器有以下几个亮点:
- 用户友好的图形界面:无需编程知识,简单易用。通过 GUI,你可以输入 URL、预览网页,并调整窗口位置。
- 网页预览功能:在设置前预览网页,确保位置和大小合适,避免反复调整。
- 一键生成脚本:快速生成定制化的 AutoHotkey 脚本,运行后直接打开网页到指定位置。
- 自动置顶:生成的脚本会自动将窗口设置为始终置顶,确保不会被其他窗口遮挡。
这些功能结合起来,让你的工作流程更加高效,特别是在需要频繁访问特定网页的场景下。
使用方法
以下是详细的使用步骤,带你快速上手这个生成器:
- 启动生成器:运行脚本后,会出现一个 GUI 界面,提示"请输入网页 URL:"。(这里可以插入一张截图,展示 GUI 界面)
- 输入 URL :在文本框中输入你想要打开的网页地址,例如 example。(这里可以插入另一张截图,展示输入 URL 的界面)
- 预览网页:点击"预览网页"按钮,Microsoft Edge 浏览器将打开该网页。此时,你可以手动拖动窗口,调整到你满意的位置和大小。(描述:这里可以展示调整窗口的动态效果)
- 确认位置:调整好后,点击"确定"按钮。生成器会记录当前窗口的位置和大小,并显示一条消息确认记录成功,例如"窗口位置和大小已记录: X=1144, Y=384, Width=626, Height=445"。(描述:这里可以展示确认消息的截图)
- 生成脚本:点击"保存并生成脚本"按钮,选择一个保存位置和文件名,生成器将创建一个新的 AutoHotkey 脚本文件,例如"my_web_script.ahk"。(描述:这里可以展示文件保存对话框的截图)
- 运行脚本:双击生成的脚本文件,Edge 浏览器将自动打开指定的网页,并将窗口设置到你之前记录的位置和大小,同时保持置顶。整个过程没有多余的弹出窗口,运行流畅。(描述:这里可以展示运行后的效果,网页窗口在指定位置)
源代码
以下是生成器的完整源代码,你可以直接复制并使用。注意:需要将 EdgePath
调整为你的 Microsoft Edge 安装路径。
autohotkey
#NoEnv
SendMode Input
SetWorkingDir %A_ScriptDir%
; Edge 浏览器路径(根据您的系统调整)
EdgePath := "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
; GUI 初始化
Gui +LastFound
Gui Add, Text, , 请输入网页 URL:
Gui Add, Edit, vURL w300, https://www.example.com
Gui Add, Text, vPosLabel, Position: X=0, Y=0, Width=0, Height=0
Gui Add, Button, gPreviewWeb, 预览网页
Gui Add, Button, gConfirmPosition, 确定
Gui Add, Button, gSaveScript, 保存并生成脚本
Gui Show
; 定义全局变量存储窗口位置和大小
global WindowX := ""
global WindowY := ""
global WindowWidth := ""
global WindowHeight := ""
return
; 预览网页
PreviewWeb:
Gui Submit, NoHide
Run, "%EdgePath%" --app=%URL%
SetTimer, UpdatePosLabel, 500
return
; 更新位置标签
UpdatePosLabel:
if WinExist("ahk_class Chrome_WidgetWin_1")
{
WinGetPos, X, Y, W, H, ahk_class Chrome_WidgetWin_1
GuiControl,, PosLabel, Position: X=%X%, Y=%Y%, Width=%W%, Height=%H%
}
return
; 确定窗口位置和大小
ConfirmPosition:
SetTimer, UpdatePosLabel, Off
if WinExist("ahk_class Chrome_WidgetWin_1")
{
WinGetPos, WindowX, WindowY, WindowWidth, WindowHeight, ahk_class Chrome_WidgetWin_1
MsgBox, 窗口位置和大小已记录:`nX=%WindowX%, Y=%WindowY%, Width=%WindowWidth%, Height=%WindowHeight%
}
else
{
MsgBox, 未检测到 Edge 窗口,请确保网页已打开。
}
return
; 保存并生成脚本
SaveScript:
Gui Submit, NoHide
if (WindowX = "" || WindowY = "" || WindowWidth = "" || WindowHeight = "")
{
MsgBox, 请先预览网页并点击"确定"以记录窗口位置和大小。
return
}
FileSelectFile, OutputFile, S, , 保存脚本, AutoHotkey Scripts (*.ahk)
if (OutputFile = "")
return
; 生成脚本内容
ScriptContent := "#NoEnv`n"
ScriptContent .= "SendMode Input`n"
ScriptContent .= "SetWorkingDir D:\desk`n"
ScriptContent .= "`n"
ScriptContent .= "; 运行 Edge 并打开网页`n"
ScriptContent .= "Run, """ . EdgePath . """ --app=""" . URL . """`n"
ScriptContent .= "`n"
ScriptContent .= "; 等待窗口出现,最多等待10秒`n"
ScriptContent .= "WinWait, ahk_class Chrome_WidgetWin_1, , 10`n"
ScriptContent .= "if (ErrorLevel)`n"
ScriptContent .= "{`n"
ScriptContent .= " MsgBox, 未找到窗口`n"
ScriptContent .= " ExitApp`n"
ScriptContent .= "}`n"
ScriptContent .= "`n"
ScriptContent .= "; 获取窗口ID`n"
ScriptContent .= "WinGet, WindowID, ID, ahk_class Chrome_WidgetWin_1`n"
ScriptContent .= "`n"
ScriptContent .= "; 设置窗口位置和大小`n"
ScriptContent .= "WinMove, ahk_id %WindowID%, , " . WindowX . ", " . WindowY . ", " . WindowWidth . ", " . WindowHeight . "`n"
ScriptContent .= "`n"
ScriptContent .= "; 设置窗口为置顶`n"
ScriptContent .= "WinSet, AlwaysOnTop, On, ahk_id %WindowID%`n"
; 保存为 UTF-8 编码
FileDelete, %OutputFile%
FileAppend, %ScriptContent%, %OutputFile%, UTF-8
MsgBox, 脚本已保存到: %OutputFile%
return
Esc::ExitApp
结语
这个 AutoHotkey 脚本生成器是一个实用的工具,能够帮助你自动化网页窗口的设置,让你的工作更加高效。无论你是开发者、设计师还是普通用户,都可以从中受益。快来试试这个生成器,体验自动化的魅力吧!如果你有任何反馈或建议,欢迎在评论区留言。