Code: Select all
#SingleInstance Force
#NoEnv
SetWorkingDir %A_ScriptDir%
; Читаем настройки
GoSub ReadSettingsFromIni
GoSub ShowSettingsWindow
Return
; ===========================
; Конец секции автовыполнения
; Чтение настроек из .ini-файла в переменные
; ==========================================
ReadSettingsFromIni:
{
IniRead, HotKey_KeyAllFiles , %A_ScriptDir%\Настройки.ini, Program1, KeyAllFiles , ^A
IniRead, Ed_CordListx , %A_ScriptDir%\Настройки.ini, Program1, CordListx , 170
IniRead, Ed_CordListy , %A_ScriptDir%\Настройки.ini, Program1, CordListy , 90
IniRead, HotKey_KeyRefresh , %A_ScriptDir%\Настройки.ini, Program1, KeyRefresh , F5
IniRead, Ed_CordRefx , %A_ScriptDir%\Настройки.ini, Program1, CordRefx , 1135
IniRead, Ed_CordRefy , %A_ScriptDir%\Настройки.ini, Program1, CordRefy , 95
Return
}
; Действия по созданию горячих клавиш
; ===================================
DisableCustomHotkeys:
{
; Прячем ошибки в случае, если была задана некорректная клавиша.
Try {
HotKey, %HotKey_KeyRefresh% , Off
HotKey, %HotKey_KeyAllFiles% , Off
}
Return
}
EnableCustomHotkeys:
{
Try {
HotKey, %HotKey_KeyRefresh% , OnKey_Refresh , On
HotKey, %HotKey_KeyAllFiles% , OnKey_AllFiles , On
} Catch err {
GoSub DisableCustomHotkeys
errorMessage := err.Message
MsgBox, 48, %ProgramName%, Не удалось создать горячие клавиши!`nСовет: воспользуйтесь документацией по ссылке "Правописание"`n`n%errorMessage%, 5
}
Return
}
; Создание окна настроек
; ======================
ShowSettingsWindow:
{
Gui, GuiMain: New
Gui, GuiMain: Add, Tab2, xm ym W330 h120 vTabvar gTabSub, Program1|
Gui, GuiMain: Tab, Program1
Gui, GuiMain: Add, Text, XM+30 Yp+25 W100 R1 , Все заказы
Gui, GuiMain: Add, Edit, X+10 Yp W160 R1 vHotKey_AllFiles , %HotKey_KeyAllFiles%
Gui, GuiMain: Add, Text, XM+30 Y+m W170 R1 , Шаг 1. Список Отображено
Gui, GuiMain: Add, Edit, X+10 Yp W40 R1 vEd_CordListx , %Ed_CordListx%
Gui, GuiMain: Add, Edit, X+10 Yp W40 R1 vEd_CordListy , %Ed_CordListy%
Gui, GuiMain: Add, Text, XM+30 Yp+25 W100 R1 , Обновление
Gui, GuiMain: Add, Edit, X+10 Yp W160 R1 vHotKey_Refresh , %HotKey_KeyRefresh%
Gui, GuiMain: Add, Text, XM+30 Y+m W170 R1 , Шаг 1. Кнопка Обновить
Gui, GuiMain: Add, Edit, X+10 Yp W40 R1 vEd_CordRefx , %Ed_CordRefx%
Gui, GuiMain: Add, Edit, X+10 Yp W40 R1 vEd_CordRefy , %Ed_CordRefy%
Gui, GuiMain: Tab,
Gui, GuiMain: Add, Link, Xm+340 YM W225 R3, Перед началом работы назначьте горячие клавиши (см. <a href="%A_WorkingDir%/HotkeyNames.exe">правописание</a>) и измените координаты кнопок (см. <a href="%A_WorkingDir%/CordButtons.exe">координаты</a>).
Gui, GuiMain: Add, Button, XM+340 Y+M W225 R3 vBt_Save gOnButtonSave , Сохранить настройки
Gui, GuiMain: Add, Button, XM+340 Y+M W110 R1 vBt_MExit gOnButtonExitMain, Отмена
; Gui, GuiMain: Add, Button, X+5 YP W110 R1 vBt_Clear gOnButtonClear, Сброс
Gui, GuiMain: Show, xCenter y230 W590 h300
return
}
TabSub:
Gui, GuiMain: Submit, NoHide
Switch Tabvar
{
Case "Program1":Guicontrol, Move, Tabvar, W330 H300
Gui, Show, W590 H330
}
Return
; Кнопка сохранения настроек
OnButtonSave:
{
GoSub DisableCustomHotkeys ; Отключаем старые горячие клавиши
Gui, Submit, NoHide
GoSub EnableCustomHotkeys ; Включаем новые горячие клавиши
IniWrite, %HotKey_KeyAllFiles% , %A_ScriptDir%\Настройки.ini, Program1, KeyAllFiles
IniWrite, %Ed_CordListx% , %A_ScriptDir%\Настройки.ini, Program1, CordListx
IniWrite, %Ed_CordListy% , %A_ScriptDir%\Настройки.ini, Program1, CordListy
IniWrite, %HotKey_KeyRefresh% , %A_ScriptDir%\Настройки.ini, Program1, KeyRefresh
IniWrite, %Ed_CordRefx% , %A_ScriptDir%\Настройки.ini, Program1, CordRefx
IniWrite, %Ed_CordRefy% , %A_ScriptDir%\Настройки.ini, Program1, CordRefy
FileSetAttrib, +H, %A_ScriptDir%\..\.AppLauncer.ini
Sleep 100
Msgbox, , %ProgramName%, Настройки успешно сохранены!, 3
Return
}
; При нажатии Esc, закрытии окна или нажатии кнопки Exit скрипт завершается.
GuiMainGuiClose:
OnButtonExitMain:
Gui, guiMain: Hide
OnKey_Refresh:
{
Click, %Ed_CordRefx%, %Ed_CordRefy%
Return
}
OnKey_AllFiles:
{
Click, %Ed_CordListx%, %Ed_CordListy%
Send {PgDn}
Send {Enter}
Return
}