commit
fd8384a912
|
@ -1,2 +1,3 @@
|
|||
*.exe
|
||||
*.ini
|
||||
*.ini
|
||||
.vscode
|
4988
DoroHelper.ahk
4988
DoroHelper.ahk
File diff suppressed because it is too large
Load Diff
99
README.md
99
README.md
|
@ -4,13 +4,19 @@
|
|||
|
||||
# DoroHelper
|
||||
|
||||
PC 端日常任务清理助手。一键清理多项日常事务。支持国际服和港澳台服客户端。支持多开。
|
||||
PC 端日常任务清理助手。一键清理多项日常事务。支持国际服和港澳台服客户端。
|
||||
|
||||
</div>
|
||||
|
||||
## 我们联合!
|
||||
|
||||
- 牢 N 写的功能类似的[手机脚本](https://github.com/Zebartin/autoxjs-scripts)
|
||||
|
||||
- 牢 D 功能类似的[模拟器脚本](https://github.com/takagisanmie/NIKKEAutoScript)
|
||||
|
||||
## 免责声明
|
||||
|
||||
本项目仅供个人学习研究使用,严禁用于商业用途。除 Github 以外其他任何网站、社交平台中有关本项目的内容**均非本人发布**,若造成侵犯著作权、版权或违反网络安全法规等任何后果,均与本人无关。
|
||||
本项目仅供个人学习研究使用,严禁用于商业用途。除 Github 和下方 qq 群以外其他任何网站、社交平台中有关本项目的内容**均非本人发布**,若造成侵犯著作权、版权或违反网络安全法规等任何后果,均与本人无关。
|
||||
|
||||
使用任何脚本程序均有封号风险,请谨慎。
|
||||
|
||||
|
@ -21,7 +27,7 @@ PC 端日常任务清理助手。一键清理多项日常事务。支持国际
|
|||
### 运行 ahk 文件(推荐)
|
||||
|
||||
1. 将整个项目文件下载到本地并解压(右上角绿色 code 按钮-Download ZIP)
|
||||
1. 下载[AutoHotkey V2.0](https://www.autohotkey.com/download/ahk-v2.exe)
|
||||
1. 下载并安装[AutoHotkey V2.0](https://www.autohotkey.com/download/ahk-v2.exe)
|
||||
1. 以管理员身份运行 DoroHelper.ahk
|
||||
|
||||
### 运行 exe 文件
|
||||
|
@ -33,42 +39,70 @@ PC 端日常任务清理助手。一键清理多项日常事务。支持国际
|
|||
|
||||
Doro 只是想让你少被该死的读条、闪光弹和重复劳动折磨。一键清理多项日常事务(按顺序执行),包括:
|
||||
|
||||
- **前哨基地防御**
|
||||
|
||||
- 1 次一举歼灭+2 次收菜
|
||||
|
||||
- **付费商店**
|
||||
|
||||
- 领取每日、周、月免费钻
|
||||
|
||||
- **免费商店**
|
||||
- **普通商店**
|
||||
|
||||
- 普通商店每天白嫖 2 次
|
||||
- 竞技场购买自定义数量的属性技能书
|
||||
- 每天白嫖 2 次
|
||||
- 用信用点买芯尘盒
|
||||
- 购买简介个性化礼包
|
||||
|
||||
- **竞技场商店**
|
||||
|
||||
- 购买指定类型的属性技能书
|
||||
- 购买代码手册宝箱
|
||||
- 购买简介个性化礼包
|
||||
- 购买公司武器熔炉
|
||||
|
||||
- **派遣远征和收菜**
|
||||
- **收取赠送好友点数**
|
||||
- **模拟室 5C 通关**
|
||||
- **新人竞技场进行自定义数量的战斗**
|
||||
- **模拟室**
|
||||
|
||||
- 顺带收取 pjjc 囤积超过 50%的菜
|
||||
- 普通模拟室
|
||||
- 模拟室超频
|
||||
|
||||
- **进行十次好感度咨询**
|
||||
- **光速爬塔失败 1 次(蹭每日任务点数)**
|
||||
- **爬企业塔**
|
||||
- **竞技场**
|
||||
|
||||
- **自动异常拦截**
|
||||
- 竞技场收菜
|
||||
- 新人竞技场
|
||||
- 特殊竞技场
|
||||
- 冠军竞技场
|
||||
|
||||
- **邮箱收取**
|
||||
- **无限之塔**
|
||||
|
||||
- **每日奖励收取**
|
||||
- 尽可能地爬企业塔
|
||||
- 尽可能地爬通用塔
|
||||
|
||||
- **Pass 收取**
|
||||
- **常规奖励领取**
|
||||
|
||||
- 前哨基地收菜
|
||||
- 进行派遣
|
||||
- 好感度咨询
|
||||
- 花絮鉴赏
|
||||
- ~~方舟排名奖励~~
|
||||
- 好友点数收取
|
||||
- 邮箱收取
|
||||
- 任务收取
|
||||
- 通行证收取
|
||||
|
||||
- **限时奖励领取**
|
||||
|
||||
- 活动期间每日免费招募
|
||||
- 协同作战摆烂
|
||||
- 单人突击日常
|
||||
- 德雷克·反派之路
|
||||
|
||||
## 妙妙工具
|
||||
|
||||
- 剧情模式
|
||||
- 对话时如果只有一个选项,在短暂延迟后点击该选项
|
||||
- 如果有两个选项,则等待玩家选择
|
||||
- 自动进行下一段剧情,自动启动 auto
|
||||
- 自动将观看过的剧情收藏
|
||||
|
||||
## 要求
|
||||
|
||||
- 【设定-画质-全屏幕模式 + 16:9 的显示器比例】(推荐) 或 【16:9 的窗口模式】(窗口尽量拉大,否则像素识别可能出现误差)
|
||||
- 16:9 全屏或窗口模式
|
||||
|
||||
- 设定-画质-开启光晕效果
|
||||
|
||||
|
@ -84,16 +118,23 @@ Doro 只是想让你少被该死的读条、闪光弹和重复劳动折磨。一
|
|||
|
||||
也可以在游戏处在大厅界面时(有看板娘的页面)切出来点击“DORO!”按钮启动程序。
|
||||
|
||||
## 其他
|
||||
|
||||
如果出现死循环,提高点击间隔可以解决 80%的问题。
|
||||
|
||||
如果你的电脑配置较好的话,可以尝试降低点击间隔。
|
||||
|
||||
## 反馈和改进
|
||||
|
||||
加入[DoroHelper 反馈群](https://qm.qq.com/q/f0Q1yr7vzi)(584275905)
|
||||
|
||||
## 支持和鼓励
|
||||
|
||||
知一一:前任作者牢 H 停更后,DoroHelper 的绝大部分维护和新功能的添加都是我在做,这耗费了我大量时间和精力,希望有条件的小伙伴们能支持一下
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<img alt="支付宝收款码" src="./img/alipay.png" width="200" height="200" />
|
||||
<img alt="微信收款码" src="./img/weixin.png" width="200" height="200" />
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
## 借物表
|
||||
|
||||
[Github.ahk-API-for-AHKv2](https://github.com/samfisherirl/Github.ahk-API-for-AHKv2)
|
||||
|
||||
[FindText-for-AHKv2](https://www.autohotkey.com/boards/viewtopic.php?f=83&t=116471)
|
||||
|
|
BIN
doro.ico
BIN
doro.ico
Binary file not shown.
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 97 KiB |
Binary file not shown.
After Width: | Height: | Size: 11 KiB |
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
|
@ -0,0 +1,325 @@
|
|||
#Requires AutoHotkey v2.0
|
||||
#SingleInstance Force
|
||||
|
||||
; --- 全局变量定义 ---
|
||||
Global MyGui := "" ; GUI 对象
|
||||
Global gFocusedProgramEdit := "" ; 聚焦窗口编辑框
|
||||
Global gCalculatedCoordsEdit := "" ; 换算坐标编辑框 (可编辑)
|
||||
Global gStatusText := "" ; 状态信息文本
|
||||
Global gMouseCoordsEdit := "" ; 鼠标屏幕坐标显示框
|
||||
Global gRelativeMouseCoordsEdit := "" ; 鼠标窗口相对坐标显示框
|
||||
Global gClientAreaEdit := "" ; 客户区矩形显示框
|
||||
Global gPixelColorEdit := "" ; 位置颜色显示框 (十六进制)
|
||||
Global gPixelCharacterBlock := "" ; 显示颜色字符的 Text 控件
|
||||
Global gSelectedRefWidth := 3840 ; 默认目标宽度 (4K)
|
||||
Global gSelectedRefHeight := 2160 ; 默认目标高度 (4K)
|
||||
Global gTargethWnd := "" ; 存储上次记录的目标窗口句柄
|
||||
|
||||
; --- 目标分辨率映射表 ---
|
||||
resolutions := Map(
|
||||
"4K", [3840, 2160],
|
||||
"2K", [2560, 1440],
|
||||
"1080p", [1920, 1080]
|
||||
)
|
||||
defaultRefKey := "4K"
|
||||
|
||||
; --- 获取当前屏幕分辨率 ---
|
||||
currentW := A_ScreenWidth
|
||||
currentH := A_ScreenHeight
|
||||
currentResText := "当前屏幕分辨率: " . currentW . "x" . currentH
|
||||
|
||||
; --- 创建图形用户界面 (GUI) ---
|
||||
MyGui := Gui("+AlwaysOnTop")
|
||||
MyGui.Title := "DDB v1.0"
|
||||
|
||||
; 提示信息
|
||||
MyGui.Add("Text", "xm y+10", "注意:标题栏和边框均不属于客户区")
|
||||
|
||||
; --- 行 1: 当前分辨率 ---
|
||||
MyGui.Add("Text", "xm y+10", currentResText)
|
||||
|
||||
; --- 行 2: 目标分辨率 ---
|
||||
MyGui.Add("Text", "xm y+15", "目标分辨率:")
|
||||
radio4k := MyGui.Add("Radio", "x+m yp vSelectedResName Checked Group", "4K")
|
||||
radio2k := MyGui.Add("Radio", "x+m yp", "2K")
|
||||
radio1080p := MyGui.Add("Radio", "x+m yp", "1080p")
|
||||
|
||||
; --- 行 3: 聚焦窗口 ---
|
||||
MyGui.Add("Text", "xm y+15", "聚焦窗口:")
|
||||
gFocusedProgramEdit := MyGui.Add("Edit", "x+m yp w150 ReadOnly Left")
|
||||
|
||||
; --- 行 4: 屏幕位置 ---
|
||||
MyGui.Add("Text", "xm y+10", "屏幕位置:")
|
||||
gMouseCoordsEdit := MyGui.Add("Edit", "x+m yp w150 ReadOnly Left")
|
||||
|
||||
; --- 行 5: 窗口位置 ---
|
||||
MyGui.Add("Text", "xm y+10", "窗口位置:")
|
||||
gRelativeMouseCoordsEdit := MyGui.Add("Edit", "x+m yp w150 ReadOnly Left")
|
||||
|
||||
; --- 行 6: 客户区矩形 ---
|
||||
MyGui.Add("Text", "xm y+10", "客户区: ") ; 注意标签后的空格是用户特意加的
|
||||
gClientAreaEdit := MyGui.Add("Edit", "x+m yp w150 ReadOnly Left")
|
||||
|
||||
; --- 行 7: 位置颜色 & 复制按钮 & 颜色字符 ---
|
||||
MyGui.Add("Text", "xm y+10", "位置颜色:") ; 标签
|
||||
gPixelColorEdit := MyGui.Add("Edit", "x+m yp w100 ReadOnly Left") ; 显示框
|
||||
copyColorButton := MyGui.Add("Button", "x+m yp", "复制") ; 复制按钮
|
||||
copyColorButton.OnEvent("Click", CopyPixelColor)
|
||||
; 使用带颜色的文本字符 '■' 显示颜色,初始为灰色
|
||||
myGui.SetFont("s12")
|
||||
gPixelCharacterBlock := MyGui.Add("Text", "x+m yp c808080", "■")
|
||||
myGui.SetFont("")
|
||||
|
||||
|
||||
; --- 行 8: 换算坐标 & 复制按钮 & 跳转按钮 ---
|
||||
MyGui.Add("Text", "xm y+10", "换算坐标:")
|
||||
gCalculatedCoordsEdit := MyGui.Add("Edit", "x+m yp w100 Left", "") ; 允许输入
|
||||
copyCoordsButton := MyGui.Add("Button", "x+m yp", "复制")
|
||||
copyCoordsButton.OnEvent("Click", CopyCalculatedCoords)
|
||||
jumpButton := MyGui.Add("Button", "y+10", "跳转") ; 跳转按钮另起一行
|
||||
jumpButton.OnEvent("Click", JumpToCoords)
|
||||
|
||||
; --- 行 9: 状态信息 ---
|
||||
gStatusText := MyGui.Add("Text", "xm y+10 w300 vStatusMessage", "按 Ctrl+Alt+Q 获取鼠标信息") ; 初始提示
|
||||
|
||||
; --- 绑定其他 GUI 事件 ---
|
||||
radio4k.OnEvent("Click", ResolutionChange)
|
||||
radio2k.OnEvent("Click", ResolutionChange)
|
||||
radio1080p.OnEvent("Click", ResolutionChange)
|
||||
MyGui.OnEvent("Close", GuiClose)
|
||||
|
||||
; --- 显示 GUI ---
|
||||
MyGui.Show()
|
||||
|
||||
; ==============================================================================
|
||||
; --- 函数定义 ---
|
||||
; ==============================================================================
|
||||
|
||||
; --- GUI 事件处理: 分辨率选择变化 ---
|
||||
ResolutionChange(GuiCtrlObj, Info) {
|
||||
global gSelectedRefWidth, gSelectedRefHeight, gStatusText, resolutions
|
||||
selectedName := MyGui["SelectedResName"].Value
|
||||
logMsg := ""
|
||||
if RegExMatch(selectedName, "^\w+", &match) {
|
||||
selectedKey := match[0]
|
||||
if resolutions.Has(selectedKey) {
|
||||
gSelectedRefWidth := resolutions[selectedKey][1]
|
||||
gSelectedRefHeight := resolutions[selectedKey][2]
|
||||
logMsg := "目标分辨率已更改为 " . selectedKey . " (" . gSelectedRefWidth . "x" . gSelectedRefHeight . ")"
|
||||
gStatusText.Value := logMsg
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
; --- 热键定义: Ctrl+Alt+Q ---
|
||||
; --- 热键定义: Ctrl+Alt+Q ---
|
||||
^!Q:: {
|
||||
; 引用全局变量
|
||||
global MyGui, gFocusedProgramEdit, gCalculatedCoordsEdit, gStatusText, gSelectedRefWidth, gSelectedRefHeight, gMouseCoordsEdit, gRelativeMouseCoordsEdit, gClientAreaEdit, gTargethWnd, gPixelColorEdit, gPixelCharacterBlock
|
||||
; 定义局部变量
|
||||
local hWnd, progName, winTitle, displayProgInfo, mX, mY, winX, winY, winW, relX, relY, propX, propY, finalX, finalY, isInside := False
|
||||
local pixelColorRGB, strColor, sixDigitColor
|
||||
|
||||
; 检查 gPixelCharacterBlock 是否有效 (保留)
|
||||
if !IsObject(gPixelCharacterBlock) {
|
||||
MsgBox("脚本错误: 颜色字符控件 'gPixelCharacterBlock' 未初始化。" . "请检查 GUI 创建部分代码是否正确执行。", "初始化错误", "IconError")
|
||||
Return
|
||||
}
|
||||
|
||||
; 强制坐标模式
|
||||
CoordMode "Mouse", "Screen"
|
||||
CoordMode "Pixel", "Screen"
|
||||
|
||||
; 清空或重置显示字段
|
||||
gCalculatedCoordsEdit.Value := ""
|
||||
gRelativeMouseCoordsEdit.Value := ""
|
||||
gStatusText.Value := "正在处理..."
|
||||
gMouseCoordsEdit.Value := ""
|
||||
gClientAreaEdit.Value := ""
|
||||
gPixelColorEdit.Value := ""
|
||||
; --- ↓↓↓ 直接重置颜色,不再使用 try-catch ↓↓↓ ---
|
||||
gPixelCharacterBlock.Opt("c808080") ; 重置字符颜色为灰色 (依赖上面的 IsObject 检查)
|
||||
|
||||
; 获取当前活动窗口
|
||||
hWnd := WinActive("A")
|
||||
if (!hWnd) {
|
||||
gStatusText.Value := "错误: 未找到活动窗口。"
|
||||
gFocusedProgramEdit.Value := "N/A"
|
||||
gTargethWnd := ""
|
||||
gPixelCharacterBlock.Opt("c808080") ; ★★★ 直接重置 ★★★
|
||||
Return
|
||||
}
|
||||
gTargethWnd := hWnd
|
||||
|
||||
; 获取并显示窗口信息
|
||||
progName := WinGetProcessName("A")
|
||||
winTitle := WinGetTitle("A")
|
||||
displayProgInfo := progName ? progName : (winTitle ? winTitle : "N/A")
|
||||
gFocusedProgramEdit.Value := displayProgInfo
|
||||
|
||||
; 获取并显示鼠标屏幕坐标
|
||||
MouseGetPos(&mX, &mY)
|
||||
gMouseCoordsEdit.Value := mX . ", " . mY
|
||||
|
||||
; 获取并显示像素颜色 及 更新颜色字符 (保留此处的 try-catch)
|
||||
try {
|
||||
pixelColorRGB := PixelGetColor(mX, mY, "RGB")
|
||||
sixDigitColor := Format("{:06X}", pixelColorRGB)
|
||||
strColor := "0x" . sixDigitColor
|
||||
gPixelCharacterBlock.Opt("c" . sixDigitColor) ; 设置字符颜色
|
||||
gPixelColorEdit.Value := strColor
|
||||
} catch Error as e {
|
||||
gPixelColorEdit.Value := "获取失败: " e.Message
|
||||
gPixelCharacterBlock.Opt("c808080") ; ★★★ 直接重置 ★★★
|
||||
}
|
||||
|
||||
; 获取并显示窗口客户区信息 (保留此处的 try-catch)
|
||||
try {
|
||||
WinGetClientPos(&winX, &winY, &winW, &winH, hWnd)
|
||||
gClientAreaEdit.Value := Format("{},{} {}x{}", winX, winY, winW, winH)
|
||||
} catch Error as e {
|
||||
gStatusText.Value := "错误: 获取客户区失败 - " . e.Message
|
||||
gClientAreaEdit.Value := "Error"
|
||||
gPixelCharacterBlock.Opt("c808080") ; ★★★ 直接重置 ★★★
|
||||
Return
|
||||
}
|
||||
|
||||
; 检查窗口尺寸是否有效
|
||||
if (winW <= 0 or winH <= 0) {
|
||||
gStatusText.Value := "错误: 无效窗口尺寸 W:" . winW . ", H:" . winH
|
||||
gClientAreaEdit.Value := Format("{},{} {}x{}", winX, winY, winW, winH)
|
||||
gPixelCharacterBlock.Opt("c808080") ; ★★★ 直接重置 ★★★
|
||||
Return
|
||||
}
|
||||
|
||||
; 进行边界检查
|
||||
isInside := (mX >= winX and mX < (winX + winW) and mY >= winY and mY < (winY + winH))
|
||||
|
||||
; 根据边界检查结果进行计算和显示
|
||||
if (isInside) {
|
||||
relX := mX - winX
|
||||
relY := mY - winY
|
||||
gRelativeMouseCoordsEdit.Value := relX . ", " . relY
|
||||
|
||||
propX := relX / winW
|
||||
propY := relY / winH
|
||||
finalX := Round(propX * gSelectedRefWidth)
|
||||
finalY := Round(propY * gSelectedRefHeight)
|
||||
gCalculatedCoordsEdit.Value := finalX . ", " . finalY
|
||||
|
||||
gStatusText.Value := "边界检查: 内部"
|
||||
} else {
|
||||
gRelativeMouseCoordsEdit.Value := "N/A"
|
||||
gCalculatedCoordsEdit.Value := ""
|
||||
gStatusText.Value := "边界检查: 外部(请重新聚焦鼠标)"
|
||||
}
|
||||
} ; 热键函数结束 ; 热键函数结束
|
||||
|
||||
; --- 跳转按钮点击处理函数 ---
|
||||
JumpToCoords(GuiCtrlObj, Info) {
|
||||
; 引用全局变量
|
||||
global MyGui, gCalculatedCoordsEdit, gStatusText, gSelectedRefWidth, gSelectedRefHeight, gTargethWnd
|
||||
|
||||
; 定义局部变量
|
||||
local targetX, targetY, propX, propY, desiredRelX, desiredRelY, finalScreenX, finalScreenY
|
||||
local hWnd, winX, winY, winW, winH
|
||||
local inputText, match
|
||||
|
||||
gStatusText.Value := "正在处理跳转..."
|
||||
|
||||
; 检查并使用存储的目标窗口句柄
|
||||
if (!gTargethWnd or !WinExist("ahk_id " . gTargethWnd)) {
|
||||
gStatusText.Value := "错误: 请先用 Ctrl+Alt+Q 记录一个有效的目标窗口。"
|
||||
gTargethWnd := ""
|
||||
Return
|
||||
}
|
||||
hWnd := gTargethWnd
|
||||
|
||||
; 获取并验证用户输入的坐标
|
||||
inputText := gCalculatedCoordsEdit.Value
|
||||
if (!RegExMatch(inputText, "^\s*(-?\d+)\s*[,; ]\s*(-?\d+)\s*$", &match)) {
|
||||
gStatusText.Value := "错误: 无效坐标格式 (请输入 X, Y)"
|
||||
Return
|
||||
}
|
||||
targetX := Integer(match[1])
|
||||
targetY := Integer(match[2])
|
||||
|
||||
; 可选: 检查输入坐标范围
|
||||
if (targetX < 0 or targetX >= gSelectedRefWidth or targetY < 0 or targetY >= gSelectedRefHeight) {
|
||||
gStatusText.Value := "提示: 输入坐标可能超出目标分辨率范围。"
|
||||
}
|
||||
|
||||
; 获取目标窗口的客户区信息
|
||||
try {
|
||||
WinGetClientPos(&winX, &winY, &winW, &winH, hWnd)
|
||||
if (winW <= 0 or winH <= 0) {
|
||||
throw Error("无效窗口尺寸 W:" . winW . ", H:" . winH)
|
||||
}
|
||||
} catch Error as e {
|
||||
gStatusText.Value := "错误: 获取目标窗口客户区失败 - " . e.Message
|
||||
Return
|
||||
}
|
||||
|
||||
; 执行反向换算
|
||||
if (gSelectedRefWidth <= 0 or gSelectedRefHeight <= 0) {
|
||||
gStatusText.Value := "错误: 无效的目标分辨率尺寸用于计算。"
|
||||
Return
|
||||
}
|
||||
propX := targetX / gSelectedRefWidth
|
||||
propY := targetY / gSelectedRefHeight
|
||||
desiredRelX := propX * winW
|
||||
desiredRelY := propY * winH
|
||||
finalScreenX := Round(winX + desiredRelX)
|
||||
finalScreenY := Round(winY + desiredRelY)
|
||||
|
||||
; 尝试重新激活目标窗口
|
||||
try {
|
||||
WinActivate("ahk_id " . hWnd)
|
||||
Sleep 100
|
||||
} catch Error as e {
|
||||
gStatusText.Value := "警告: 激活目标窗口失败 - " e.Message ",仍尝试跳转。"
|
||||
}
|
||||
|
||||
; 移动鼠标
|
||||
CoordMode "Mouse", "Screen"
|
||||
MouseMove finalScreenX, finalScreenY, 0
|
||||
|
||||
; 更新状态
|
||||
gStatusText.Value := "鼠标已跳转至目标窗口对应坐标: " . finalScreenX . ", " . finalScreenY
|
||||
}
|
||||
|
||||
; --- GUI 关闭处理函数 ---
|
||||
GuiClose(GuiObj) {
|
||||
ExitApp()
|
||||
}
|
||||
|
||||
; --- 复制按钮事件处理函数 ---
|
||||
CopyPixelColor(GuiCtrlObj, Info) {
|
||||
global gPixelColorEdit, gStatusText
|
||||
local colorValue
|
||||
|
||||
colorValue := gPixelColorEdit.Value
|
||||
if (colorValue != "" && colorValue != "获取失败") { ; 检查是否有有效内容
|
||||
A_Clipboard := colorValue
|
||||
gStatusText.Value := "颜色值 '" colorValue "' 已复制!"
|
||||
SetTimer(() => (gStatusText.Value == "颜色值 '" colorValue "' 已复制!" ? gStatusText.Value := "" : ""), -2000)
|
||||
} else {
|
||||
gStatusText.Value := "没有有效颜色值可复制。"
|
||||
SetTimer(() => (gStatusText.Value == "没有有效颜色值可复制。" ? gStatusText.Value := "" : ""), -2000)
|
||||
}
|
||||
}
|
||||
|
||||
CopyCalculatedCoords(GuiCtrlObj, Info) {
|
||||
global gCalculatedCoordsEdit, gStatusText
|
||||
local coordsValue
|
||||
|
||||
coordsValue := gCalculatedCoordsEdit.Value
|
||||
if (coordsValue != "") {
|
||||
A_Clipboard := coordsValue
|
||||
gStatusText.Value := "换算坐标 '" coordsValue "' 已复制!"
|
||||
SetTimer(() => (gStatusText.Value == "换算坐标 '" coordsValue "' 已复制!" ? (gStatusText.Value := "") : ""), -2000)
|
||||
} else {
|
||||
gStatusText.Value := "没有换算坐标可复制。"
|
||||
SetTimer(() => (gStatusText.Value == "没有换算坐标可复制。" ? (gStatusText.Value := "") : ""), -2000)
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue