1 (изменено: Mokson, 2021-12-07 21:21:14)

Тема: AHK: Внесение текста в AHK скрипт через Edit GUI

Здравствуйте, мне нужна помощь со скриптом AHK

Код:

Gui, Add, Edit, x12 y7 w451 h57 vText, test ; окно Edit, где я записываю путь к файлу
Gui, Add, Button, x12 y74 w134 h38 gKey , apply
Gui, Show, w479 h153, Untitled GUI
return

Key:
GuiControlGet, Text
?
?

GuiClose:
ExitApp

loop
{
	loop, read, %Text%  ; здесь нужно вставить то, что я написал в edit
        last_line  := A_LoopReadLine
        If last_line contains Unknown command. Type "help" for help.
        {
        Send {t}
        Sleep 1000
        Send, /skyblock
        SendInput {enter}
        Sleep 3000
        Send {space down}
        Sleep 50
        Send {space up}
        Sleep 50
        Send {space down}
        Sleep 50 
        Send {space up}
        Sleep 2000
        }
}
F2:: pause

Обыскал форум вдоль и поперёк, ничего схожего с моей задачей я не нашел. Если вы мне поможете со скриптом или поможете найти соответствующую тему, я буду очень благодарен.

Что мне нужно:

есть gui меню, где в edit я пишу путь к  файлу n. Нужно сделать так, чтобы при нажатии на apply в gui, то, что я написал в edit, перенеслось в loop, read, %Text%.

2 (изменено: Phoenixxx_Czar, 2021-12-08 16:38:34)

Re: AHK: Внесение текста в AHK скрипт через Edit GUI

Мне кажется проще использовать 'FileSelectFile' и вызывать его по кнопке в трее допустим.

#Persistent

Menu, Tray, NoStandard
Menu, Tray, Add, % "Select file", selectFile
Menu, Tray, add
Menu, Tray, Add, % "Close script", closeScript

global logFile := ""

selectFile()

setTimer, readLog, 50
return

readLog()
{
	if (!logFile)
		return

	loop, read, % logFile
        last_line  := A_LoopReadLine

    If last_line contains Unknown command. Type "help" for help.
    {
        Send {t}
        Sleep 1000
        Send, /skyblock
        SendInput {enter}
        Sleep 3000
        Send {space down}
        Sleep 50
        Send {space up}
        Sleep 50
        Send {space down}
        Sleep 50 
        Send {space up}
        Sleep 2000
    }
}

selectFile()
{
	FileSelectFile, selectedFile, 3,, Select log file, Log file (*.txt; *.log)
	if (errorLevel)
	{
		return
	}

	if (!selectedFile)
	{
		selectFile()
	}

	logFile := selectFile
}

closeScript()
{
	exitApp
}

В вашем варианте, я думаю можно попробовать так:

Gui, Add, Edit, x12 y7 w451 h57 vText, test ; окно Edit, где я записываю путь к файлу
Gui, Add, Button, x12 y74 w134 h38 gKey , apply
Gui, Show, w479 h153, Untitled GUI
return

Key:
Gui, Submin, NoHide
return
Win10: LTSC (21H2); AHK: ANSI (v1.1.36.02)