Page 1 of 1

Отлов нажатия клавиши - как?

Posted: 2006-07-15 22:23:56
by geernick
Перед тем как создать тему, около 2х часов юзал поиск. не нашел.
Возможно ли в скрипте отловить нажатие клавиши, допустим, Enter?

я представляю себе это так - скрипт доходит до определенного места, останавливается и ждет, пока не нажата Enter, как только она нажата, продолжает работать дальше.

что-то типа
while NOT UO.IsPressed(код Enter'а)
wait(100)
wend

если бы такое IsPressed существовало )) подозреваю, что его нет.
подскажите, пожалуйста, как это можно обойти, и получить желаемый результат.

ну и заодно код Enter'а )) На Esc нашел - 27, на Alt тоже - 18, а на Enter - нет ((

Posted: 2006-07-15 22:35:27
by Grin
enter - 13...
но суть не в этом.
Сделай проще...
Есть такое как глобальная переменая. Заставь проверять скрипт какуюто глобальную переменую а второй скрипт за бинди на тотже энтер...
скрипт будет ждать пока не изменится переменая.

Code: Select all

sub main()
	...
	uo.SetGlobal('Enter', 0)
	while not uo.GetGlobal('Enter')
		wait(100)
	wend
	...
end sub
sub PressEnter()
	uo.SetGlobal('Enter', 1)
end sub

Posted: 2006-07-15 22:38:35
by geernick
Спасибо, Grin. Именно это я и искал ))) выход )))

Posted: 2006-07-16 00:48:11
by Nmy

Code: Select all

##########################################
Sub test()
##########################################
	If uo.getglobal('test')=='On' then
	uo.setglobal('test',0)
	uo.print(' !!! -= Test: OFF =- !!! ')
	uo.exec('terminate test')
	else
	uo.setglobal('test','On')
	uo.print(' !!! -= Test: On =- !!! ')
	end if
#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#


#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#
                                        
	uo.setglobal('test', 0 )
	uo.print(' !!! -= Test: OFF =- !!! ')
##########################################
end sub
##########################################
скрипт тест над каторым я делаю множество ужасных експериментов :twisted: