Что нового

Внедрить переменную в путь открытия файла

VermanVendetta13

Новичок
Сообщения
147
Репутация
0
Столкнулся с некой сложностью. Как можно внедрить переменную в путь? Подскажите пожалуйста

Код:
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#Include <File.au3>
Start ()
Func Start ()
Local  $hGUI = GUICreate ("Test" , 100, 100)
Local $Url1 = GUICtrlCreateButton ("uroc 1", 0,0, 85,25)
Local $Url2 = GUICtrlCreateButton ("uroc 2", 10,0,85,25)
GUISetState(@SW_SHOW, $hGUI)
While 1
$iMsg = GUIGetMsg()
	Switch $iMsg
		Case $GUI_EVENT_CLOSE
			Exit

		 Case $Url1
			$papka = "\U1"
			Open ()
		 Case $Url2
			$papka = "\U2"
			EndSwitch
		 WEnd
EndFunc

Func Open ()
 $aFiles = _FileListToArray("C:\Users\verma\OneDrive\Рабочий стол\Conceptor WeDo 1.0\" & $papka & "*.jpg", 1, True)
If @error Then Exit MsgBox(16, "Ошибка", "Файлы не найдены")

Global $hGUI, $iPic, $iMsg, $iWidth = 844, $iHeight = 656, $i = 1

$hGUI = GUICreate("Схема сборки", $iWidth, $iHeight, BitOR($WS_SYSMENU, $WS_POPUP), BitOR($WS_EX_TOPMOST,$WS_EX_WINDOWEDGE))
$BACK = GUICtrlCreatePic (@ScriptDir & "\!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1", 0,0,1000,500,0) ;;;;;;;;;;;Добавляем картику фон для урока
GUICtrlSetState (-1, $GUI_DISABLE) ;;;;;блокируем картинку на заднем фоне

GUISetState (@SW_MAXIMIZE)
$iPic = GUICtrlCreatePic($aFiles[$i], 350, 150, $iWidth, $iHeight)
GUISetState()

While 1
	$iMsg = GUIGetMsg()
	Switch $iMsg
		Case $GUI_EVENT_CLOSE
			ExitLoop
		Case $GUI_EVENT_PRIMARYDOWN
			$i += 1
			If $i > $aFiles[0] Then  $i = $aFiles[0]  ;;;;;;;;;;;;;;;Оптимизировать в остальных!!!!!
			GUICtrlSetImage($iPic, $aFiles[$i])
		Case $GUI_EVENT_SECONDARYDOWN
			$i -= 1
			If $i < 1 Then $i = 1;;;;;;;;;;;;;;;;;;;Оптимизировать в остальных!!!!!
			GUICtrlSetImage($iPic, $aFiles[$i])

	EndSwitch
WEnd
EndFunc


Код:
$aFiles = _FileListToArray("C:\Users\verma\OneDrive\??????? ????\Conceptor WeDo 1.0\" & $papka & "*.jpg", 1, True)
$aFiles = _FileListToArray("C:\Users\verma\OneDrive\??????? ????\Conceptor WeDo 1.0\" & ^ ERROR
>Exit code: 1    Time: 1.754
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
У Вас значение $papka = "\U2" и в конце строки "C:\Users...\Conceptor WeDo 1.0\" тоже слеш стоит, в итоге при слиянии строки с переменной получается два слеша подряд. Более того, Вам значение "*.jpg" не нужно к строке лепить, а выделить запятой, ведь это фильтр.
Код:
$aFiles = _FileListToArray("C:\Users\verma\OneDrive\??????? ????\Conceptor WeDo 1.0" & $papka , "*.jpg", 1, True)
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
Я не досмотрел, изменил строку в предыдущем сообщении, значение переменной $papka оставьте "\U2", я в конце строки лишний слеш убрал
 
Автор
V

VermanVendetta13

Новичок
Сообщения
147
Репутация
0
ra4o сказал(а):
Я не досмотрел, изменил строку в предыдущем сообщении, значение переменной $papka оставьте "\U2", я в конце строки лишний слеш убрал

таже ошибка
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
Объявите глобальную переменную, добавьте в начало скрипта перед циклом
Код:
Global $papka
 
Верх