Описание функции


Sleep

Приостанавливает выполнение утилиты.

Sleep(delay)

Параметры

delay Число миллисекунд, на которое необходимо приостановить выполнение скрипта.

Примечания

Максимальное время "сна" составляет 2147483647 миллисекунд (24 дня).
Минимальное 10, даже при установке параметра delay равным 1.

Функцию можно подключить через команду exect
Для передачи пустой строки можно воспользоваться ключевым словом Null
Для передачи значения по умолчанию можно воспользоваться ключевым словом Default

Примеры:
 Как создать кнопку?

Sleep(1000) ;  Приостановка скрипта на 1 секунду

exect=$var_hh=TimerInit()||Sleep(2000)||$var_nn=TimerDiff($var_hh) GLOBALEXECT<a> ;; пример показывает сколько времени работала команда

exect=SplashTextOn('Заголовок','Моё~~Сообщение...',200,50)&Sleep(3000)&SplashOff() ;; пример окна с текстом

exect=ProgressOn('Измеритель','Увеличивается','0~~процентов') <FOR> 1 <TO> 5 exect=ProgressSet(:INDEX:*20,:INDEX:*20&'~~процентов')&Sleep(1000) <NEXT> exect=ProgressOff() ;; пример прогресс бара

exect=$var_ii=##[input=BOX68]||$var_im=$var_ii&'n' pause=$var_im sndps=1 exect=SplashTextOn('Напоминаю','Прошло~~$var_ii~~минут(ы)',200,50)&Sleep(10000)&SplashOff() ;; через заданное количество минут выдать сообщение (количество вводится в диалоге)

exect=SoundPlay('c:\Music.mp3')||Sleep(10000) ;; воспроизводить звуковой файл 10 секунд (после звукового файла могут стоять и другие команды, он будет звучать до конца обработки всех команд)

exect=Run('calc')||Sleep(1000)||ControlClick('Калькулятор',Null,'[ID:139]') ;; запустить калькулятор и эмулировать нажатие мыши на указанном элементе (на Win10 не работает)

exect=ControlDisable('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1')||Sleep(2000)||ControlEnable('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1') ;; на 2 секунды отключить панель инструментов Total Commander

exect=ControlHide('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1')||Sleep(2000)||ControlShow('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1') ;; на 2 секунды скрыть панель инструментов Total Commander

exect=ControlMove('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1',10,10)||Sleep(2000)||ControlMove('[CLASS:TTOTAL_CMD]',Null,'TButtonBar1',0,2) ;; на 2 секунды переместить панель инструментов (TC x32)

exect=WinMinimizeAll()||Sleep(3000)||WinMinimizeAllUndo() ;; свернуть все окна, вернуть последнее открытое окно

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||$var_a=WinGetPos(Eval('var_h'))||WinMove(Eval('var_h'),Null,10,10,200,300,20)||Sleep(3000)||WinMove(Eval('var_h'),Null,$var_a[0],$var_a[1],$var_a[2],$var_a[3],20) ;; переместить окно Total Commander, через 3 секунды вернуть окно обратно

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetOnTop(Eval('var_h'),Null,1)||Sleep(3000)||WinSetOnTop(Eval('var_h'),Null,0) ;; включить на 3 секунды состояние окна "поверх всех окон" Total Commander

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetState(Eval('var_h'),Null,@SW_HIDE)||Sleep(3000)||WinSetState(Eval('var_h'),Null,@SW_SHOW) ;; на 3 секунды скрыть окно Total Commander

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetTrans(Eval('var_h'),Null,192)||Sleep(3000)||WinSetTrans(Eval('var_h'),Null,255) ;; на 3 секунды сделать окно Total Commander прозрачным на 25%

exect=Run('notepad.exe')||WinWait('[CLASS:Notepad]')||Sleep(3000)||WinClose('[CLASS:Notepad]') ;; запустить "Блокнот", дождаться появления указанного окна и через 3 секунды закрыть окно

exect=$var_ipid=Run('notepad.exe')||Sleep(3000)||ProcessClose($var_ipid) ;; запустить "Блокнот" и через 3 секунды завершить процесс

exect=MouseDown('left')||Sleep(100)||MouseUp('left') ;; устанавливает левую кнопку мыши нажатой на 100 миллисекунд

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||SendKeepActive(HWnd($var_h)) <FOR> 1 <TO> 10 exect=Send('привет')||Sleep(500) <NEXT> exect=SendKeepActive(Null)||WinClose(HWnd($var_h)) ;; запустить "Блокнот" и удерживать окно блокнота активным при использовании функции Send()

exect=BlockInput(1)||Sleep(3000)||BlockInput(0) ;; на 3 секунды отключить использование мыши и клавиатуры

exect=TraySetState(1)||TraySetIcon(@ScriptDir&'\TCIMG.dll',1)||Sleep(5000) ;; пример установки значка в трее

exect=$var_s='---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>'||ToolTip('$var_s',0,0,'Информация',1,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в верхнем углу экрана с информацией: Путь объекта под курсором и его даты создания

exect=$var_a=MouseGetPos()||$var_s='---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>'||ToolTip('$var_s',$var_a[0],$var_a[1],'Информация',1,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в позиции курсора с информацией: Путь объекта под курсором и его даты создания

exect=$var_ix=<info=x165>||$var_iy=<info=x166>||$var_s='---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>'||ToolTip('$var_s',$var_ix,$var_iy,'Информация',1,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в позиции пункта с информацией: Путь объекта под курсором и его даты создания

exect=ToolTip('---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>',<info=x165>,<info=x166>,'Информация',1,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в позиции пункта с информацией: Путь объекта под курсором и его даты создания

exect=ToolTip('---------------------------'&@CRLF&'Длина~~пути:~~'&StringLen('%P%N')&'~~символа(ов)'&@CRLF&'Дата~~создания:~~<info=o44%P%N//>',<info=x165>,<info=x166>,'Информация',1,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в позиции пункта с информацией: Длина пути объекта под курсором и его даты создания

exect=TraySetState(1)||TrayTip('Информация','---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>',5,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в трее с информацией: Путь объекта под курсором и его даты создания

bufsr=##<info=x5> exect=ToolTip(ClipGet(),800,500,'Информация',1,1)||Sleep(5000) ;; записать в буфер обмена количество файлов в активной панели и отобразить в информационном окне

lists=%Z%WL||##path<4>||&&(?i)[^a-zа-яё\s]!!~~||#G7||&&(?i)([a-za-яёЁ]+).*!!$1 exect=ToolTip(ClipGet(),<info=x165>,<info=x166>,'i',1,1)||Sleep(600) ;; копировать первые слова имен выделенных объектов и отобразить в информационном окне

lists=%Z%WL||##path<4>||&&(?i)[^a-zа-яё\s]!!~~||#G7||&&(?i)([a-za-яёЁ]~~[a-za-яёЁ]+).*!!$1 exect=ToolTip(ClipGet(),<info=x165>,<info=x166>,'i',1,1)||Sleep(600) ;; копировать первые два слова имен выделенных объектов и отобразить в информационном окне

exect=$var_h=InetGet('http://www.mozilla.org',@DesktopDir&'\mozilla.html',1,1)||Sleep(1000)||$var_a=InetGetInfo($var_h,-1)||_ViewValues($var_a)||InetClose($var_h) ;; скачать страницу на рабочий стол и выдать информацию

<TRAY=HINT2||1||%%TCIMG_PATH%%\TCIMG.dll,38> <TIME=h00n01:h23n59:n06> exect=TraySetState(1)||TrayTip('***********Скоро~~Разминка***********','До~~начала~~разминки~~осталось~~10~~секунд'&@CRLF&'<info=s100dddd~~MMMM~~yyyy~~H:mm:ss>',5,1)||Sleep(1000) infbx=InfoBox16 sndps=D:\TCSibirnik\Files\Sound\Warmup\start.mp3||1 blist=PS<D:\Досуг\Музыка//1//-1//*.mp3|*.wma|*.wav> uends=x||##rndm<22|$GLOBALBLIST> sndps=GLOBALUENDS<1>||0 infos=3||1||GLOBALUENDS<1>||1 infht=GLOBALINFOS<28>||Приятной~~Разминки||@$f250\Files\Htm\Trec_Timer2.htm||500||40||65||840||set<FF033E|FDEE00|1,,,30,,,1>||style<2|1> sndps=D:\TCSibirnik\Files\Sound\Warmup\finish.mp3||1 ;; Вывод сообщения "Пора на разминку", проигрыш звукового файла, проигрывание случайного трека в бегущей строке, проигрыш звукового файла, закрытие и повтор цикла через 30 минут

<TRAY=~~CTRL+Q||1||TCIMG.dll,112> <PRESS=11,51> exect=MouseClick('right')||Sleep(300)||Send('SS{ENTER~~2}') <PRESS=1B> :EXIT: ;; по нажатию CTRL+Q в активном окне нажать ПКМ + 2 раза клавишу "S" + 2 раза "ENTER" (применяется для вызова настроенного контекстного меню FireFox для быстрого сохранения изображений)

<PRESW=12> exect=$var_i+=1||ToolTip('Нажатие~~ALT~~'&$var_i,5,5)+Sleep(99) <PRESW=1B> infbx=||ESC~~ВЫХОД||3||170||60 :EXIT: <PRESWEND> ;; пример работы команды <PRESW> - количество нажатий в подсказке с заданной задержкой между нажатиями

exect=TraySetState(1)||TrayTip(Null,'---------------------------'&@CRLF&'%P%N'&@CRLF&'<info=o44%P%N//>',5,1)||Sleep(5000) ;; создать всплывающую подсказку на 5 секунд в трее с информацией: Путь объекта под курсором и его даты создания (без заголовка)

exect=TraySetState(1)||TraySetIcon()||Sleep(5000) ;; пример установки значка в трее по умолчанию

exect=SplashTextOn('Заголовок','Дата:~~'&StringFormat('%%04d.%%02d.%%02d~~%%02d:%%02d:%%02d',@YEAR,@MON,@MDAY,@HOUR,@MIN,@SEC),300,200,-1,5,0,Null,38,700)+Sleep(3000)+SplashOff() ;; пример окна с датой

exect=SplashTextOn('Заголовок',StringReplace(ClipGet(),'&','&&'),200,50)&Sleep(3000)&SplashOff() ;; пример окна с текстом из буфера обмена (удвоение для корректного отображения символа "&")


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru