1 (изменено: sajkdajsdjqwje, 2024-08-15 15:14:55)

Тема: AHK: Сохранение Hotkey

; Generated by AutoGUI 2.5.8
#SingleInstance Force
#NoEnv
SetWorkingDir %A_ScriptDir%
SetBatchLines -1

Menu, HelpMenu, Add, Настройки, SF
Menu, MyMenuBar, Add, Действия, :HelpMenu

Gui Menu, MyMenuBar

Gui, Add, Text, x192 y59 w130 h30 , %HK1%
Gui, Add, Text, x192 y89 w130 h30 , %HK2%
Gui, Show, x127 y87 h830 w1260, Основная страница
Return

SF:
    settingsFirst()
return

Exit:
ExitApp

GuiSize:
    If (A_EventInfo == 1) {
        Return
    }

Return

GuiContextMenu:
Return

GuiEscape:
GuiClose:
    ExitApp


settingsFirst() {
    Gui, settingsFirst: Add, Hotkey, x192 y59 w130 h30 vHK1, %HK1%
    Gui, settingsFirst: Add, Hotkey, x192 y89 w130 h30 vHK2, %HK2%
    Gui, settingsFirst: Add, Button, x1162 y229 w90 h160 gBack, Выйти обратно
    Gui, settingsFirst: Add, Button, x1162 y429 w90 h330 gSave, Сохранить изменения
    Gui, settingsFirst: Show, x127 y87 h830 w1260, Страница 1 | Настройки
    Return
}
    obn:
    Return

    first:
    return

    Back:
        Gui settingsFirst:Destroy
    return

    Save:
    return

В коде основного окна нажимается кнопка "Настройки", где создается новый GUI, где вместо текста с переменными есть элемент Hotkey и кнопка "Сохранить". Мне нужно сохранить данные хоткеев, но у меня возникают ошибки при попытке сохранения. Cпасибо!

2

Re: AHK: Сохранение Hotkey

Краткость кода приветствуется. Мало кому захочется читать портянку на 497 строк.

Win11x64, AHK v1.1.37.01 (Unicode 64-bit), AHK v2.0.17| AHK-Wiki | Переменные и выражения | RegEx101

3

Re: AHK: Сохранение Hotkey

__Михаил__
Удалил большинство излишних строк

4

Re: AHK: Сохранение Hotkey

sajkdajsdjqwje
Пожалуйста, используйте точки.
Для демонстрации проблемы я советую удалить из скрипта всё, что не имеет отношения к вопросу. Если вопрос касается сохранения результата, который выдаёт контрол Hotkey, то было бы достаточно создать окно, в котором будет единственный контрол Hotkey. Ну и ваша попытка сохранить данные из него, пусть и ошибочная. Тогда отвечающему будет проще.
Ещё на заметку. Такие ники (бессмысленный набор символов) обычно используют спамеры, на будущее не советую, если не хотите быть заблокированным "на всякий случай".

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5 (изменено: sajkdajsdjqwje, 2024-08-10 10:14:10)

Re: AHK: Сохранение Hotkey

teadrinker
Ник присвоился исходя из почты автоматически.
Из кода все лишнее удалено.

6

Re: AHK: Сохранение Hotkey

А зачем там 45 хоткеев? Если было бы 44, или 43, уже не сработает? Я вот предлагаю оставить 1.
Тем более, что добавлять их построчно — так себе идея. Если бы нужно было 1000, вы бы 1000 одинаковых строк написали?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Сохранение Hotkey

sajkdajsdjqwje
Вижу, что сократили. Можете пояснить теперь, как это должно работать?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

8 (изменено: sajkdajsdjqwje, 2024-08-14 03:11:38)

Re: AHK: Сохранение Hotkey

В коде основного окна нажимается кнопка "Настройки", где создается новый GUI, где вместо текста с переменными есть элемент Hotkey и кнопка "Сохранить". Мне нужно сохранить данные хоткеев, но у меня возникают ошибки при попытке сохранения.

9

Re: AHK: Сохранение Hotkey

Напомните, я уже говорил про точки?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

10 (изменено: sajkdajsdjqwje, 2024-08-14 03:12:00)

Re: AHK: Сохранение Hotkey

.teadrinker
Исправлено.

11

Re: AHK: Сохранение Hotkey

sajkdajsdjqwje пишет:

В коде основного окна нажимается кнопка "Настройки"

Не обнаружил таковую.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

12

Re: AHK: Сохранение Hotkey

teadrinker
Извиняюсь, лишнего подтер. Код исправил.

13

Re: AHK: Сохранение Hotkey

Кнопку всё равно не нашёл. Есть меню, но оно не работает. Вы никогда сами не запускаете код, который постите?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

14

Re: AHK: Сохранение Hotkey

sajkdajsdjqwje, замени функцию на метку и все заработает.

+ открыть спойлер
; Generated by AutoGUI 2.5.8
#SingleInstance Force
#NoEnv
SetWorkingDir %A_ScriptDir%
SetBatchLines -1

Menu, HelpMenu, Add, Настройки, SF
Menu, MyMenuBar, Add, Действия, :HelpMenu

Gui Menu, MyMenuBar

Gui, Add, Text, x192 y59 w130 h30 , %HK1%
Gui, Add, Text, x192 y89 w130 h30 , %HK2%
Gui, Show, x127 y87 h830 w1260, Основная страница
Return

SF:
    gosub,settingsFirst
return

Exit:
ExitApp

GuiSize:
    If (A_EventInfo == 1) {
        Return
    }

Return

GuiContextMenu:
Return

GuiEscape:
GuiClose:
    ExitApp


settingsFirst:
    Gui, settingsFirst: Add, Hotkey, x192 y59 w130 h30 vHK1, %HK1%
    Gui, settingsFirst: Add, Hotkey, x192 y89 w130 h30 vHK2, %HK2%
    Gui, settingsFirst: Add, Button, x1162 y229 w90 h160 gBack, Выйти обратно
    Gui, settingsFirst: Add, Button, x1162 y429 w90 h330 gSave, Сохранить изменения
    Gui, settingsFirst: Show, x127 y87 h830 w1260, Страница 1 | Настройки
    Return

    obn:
    Return

    first:
    return

    Back:
        Gui settingsFirst:Destroy
    return

    Save:
    return
Win 10 x64
AHK v1.1.33.02
                       Справка тебе в помощь.

15

Re: AHK: Сохранение Hotkey

Alectric
Блин, вот в чем проблема была. Спасибо большое!