[решено] Временное отключение HotKeySet
-
sashadeg
[решено] Временное отключение HotKeySet
Нужно чтобы HotKeySet на время приостановили свою деятельность если окно находится НЕ в СВЁРНУТОМ состоянии...
Врядли это возможно, но всётаки решил спросить...
=========================
Исправил...
Врядли это возможно, но всётаки решил спросить...
=========================
Исправил...
-
Creat0R
Re: [решено] Временное отключение HotKeySet
Цитата sashadeg:
Врядли это возможно
Возможно ещё как - Нужно проверять в функции хоткея состояние окна WinGetState().
Как это сделать? Очень просто - посмотреть в справке что возвращает WinGetState при свёрнутом окне, и проверить через BitAnd...
Код:
Врядли это возможно
[решено] Временное отключение HotKeySet
Возможно ещё как - Нужно проверять в функции хоткея состояние окна WinGetState().
Как это сделать? Очень просто - посмотреть в справке что возвращает WinGetState при свёрнутом окне, и проверить через BitAnd...
Код:
Код: Выделить всё
Func MyHotKeyFunc()
If Not BitAND(WinGetState($hGUI), тут то, что написано в справке для свёрнутого окна) Then Return ;окно НЕ свёрнуто
;тут выполнение кода по хоткею
EndFunc-
proxy
-
Creat0R
Re: [решено] Временное отключение HotKeySet
proxy, Ты извини конечно, но код я потёр в твоём посте (если что скажи, код я сохранил в буфер обмена
) - Причина редактирования:
Цитата:
Пора sashadeg'e учиться пользоваться справкой
Вот так постоянно кидать готовые примеры и решения, это не выход, я бы лично никогда не научился кодить на AutoIt если бы мне вот так давали всё готовое.. хотя иногда на примере лучше объяснить, но это не тот случай.
И кстати, зачем ты в цикле решил проверять состояние окна, можно же ведь в самой функции
Цитата proxy:
Если для AutoIt окна
И это кстати sashadeg, тоже не уточнил, т.ч ждём его ответа.
) - Причина редактирования:Цитата:
Пора sashadeg'e учиться пользоваться справкой
Вот так постоянно кидать готовые примеры и решения, это не выход, я бы лично никогда не научился кодить на AutoIt если бы мне вот так давали всё готовое.. хотя иногда на примере лучше объяснить, но это не тот случай.
И кстати, зачем ты в цикле решил проверять состояние окна, можно же ведь в самой функции

Цитата proxy:
Если для AutoIt окна
[решено] Временное отключение HotKeySet
И это кстати sashadeg, тоже не уточнил, т.ч ждём его ответа.
-
proxy
Re: [решено] Временное отключение HotKeySet
Цитата Creat0R:
И кстати, зачем ты в цикле решил проверять состояние окна, можно же ведь в самой функции
поспешил, необдумал ))
Цитата Creat0R:
Ты извини конечно, но код я потёр в твоём посте
претензий нет - учусь доверять опыту ))
Цитата Creat0R:
Вот так постоянно кидать готовые примеры и решения, это не выход, я бы лично никогда не научился кодить на AutoIt если бы мне вот так давали всё готовое.. хотя иногда на примере лучше объяснить, но это не тот случай.
тут правдо еще один аспект, иногда, интересно ж самому реализовать задачу и конечно же поделиться решением ))
И кстати, зачем ты в цикле решил проверять состояние окна, можно же ведь в самой функции
[решено] Временное отключение HotKeySet
поспешил, необдумал ))
Цитата Creat0R:
Ты извини конечно, но код я потёр в твоём посте
[решено] Временное отключение HotKeySet
претензий нет - учусь доверять опыту ))
Цитата Creat0R:
Вот так постоянно кидать готовые примеры и решения, это не выход, я бы лично никогда не научился кодить на AutoIt если бы мне вот так давали всё готовое.. хотя иногда на примере лучше объяснить, но это не тот случай.
[решено] Временное отключение HotKeySet
тут правдо еще один аспект, иногда, интересно ж самому реализовать задачу и конечно же поделиться решением ))-
sashadeg
Re: [решено] Временное отключение HotKeySet
Цитата Creat0R:
что возвращает WinGetState при свёрнутом окне
Это я знаю, что 16...
Цитата Creat0R:
MyHotKeyFunc()
А что это заменяет HotKeySet ??? нифигасе...
Цитата Creat0R:
;тут выполнение кода по хоткею
???
Цитата Creat0R:
ждём его ответа
Да для AutoIt окна...
Извините, если что.... Просто я AutoIt с середины февраля этого года начал использовать... а до этого ВООБЩЕ ничего и никакого языка даже мельком не знал... Да и на AutoIt не обратил внимания, еслибы не send()...
что возвращает WinGetState при свёрнутом окне
[решено] Временное отключение HotKeySet
Это я знаю, что 16...
Цитата Creat0R:
MyHotKeyFunc()
[решено] Временное отключение HotKeySet
А что это заменяет HotKeySet ??? нифигасе...

Цитата Creat0R:
;тут выполнение кода по хоткею
[решено] Временное отключение HotKeySet
???
Цитата Creat0R:
ждём его ответа
[решено] Временное отключение HotKeySet
Да для AutoIt окна...
Извините, если что.... Просто я AutoIt с середины февраля этого года начал использовать... а до этого ВООБЩЕ ничего и никакого языка даже мельком не знал... Да и на AutoIt не обратил внимания, еслибы не send()...
-
Creat0R
Re: [решено] Временное отключение HotKeySet
Цитата proxy:
иногда, интересно ж самому реализовать задачу и конечно же поделиться решением
Да, но это же супер тривиальная задача, смысл?
Цитата sashadeg:
А что это заменяет HotKeySet ?
Мда... Как всё запущенно... Это функция, которую указывают в HotKeySet, или вы ещё не поняли как работают функции в аутоите?
Цитата sashadeg:
???
Что не ясно? Там вместо комментария указываете действие, которые указывали в функции по хоткею.
Да и вообще... судя по сказанному в первом посте:
Цитата sashadeg:
Нужно чтобы HotKeySet не стимулировал нажатия клавиш
Я начинаю сомневаться в том, что вы понимаете для чего сия функция - она не стимулирует нажатия клавиш, она вызывает определённую функцию при нажатии определённых клавиш пользователем.
Возможно имелась в виду Send() а не HotKeySet()?
Цитата sashadeg:
я AutoIt с середины февраля этого года начал использовать... а до этого ВООБЩЕ ничего и никакого языка даже мельком не знал
Вот теперь вы попали, придётся учить до конца
- И если начали учить недавно, это ещё не значит что для вас не существует справки и прочей внешней информации, кой в ести море!
иногда, интересно ж самому реализовать задачу и конечно же поделиться решением
[решено] Временное отключение HotKeySet
Да, но это же супер тривиальная задача, смысл?
Цитата sashadeg:
А что это заменяет HotKeySet ?
[решено] Временное отключение HotKeySet
Мда... Как всё запущенно... Это функция, которую указывают в HotKeySet, или вы ещё не поняли как работают функции в аутоите?
Цитата sashadeg:
???
[решено] Временное отключение HotKeySet
Что не ясно? Там вместо комментария указываете действие, которые указывали в функции по хоткею.
Да и вообще... судя по сказанному в первом посте:
Цитата sashadeg:
Нужно чтобы HotKeySet не стимулировал нажатия клавиш
[решено] Временное отключение HotKeySet
Я начинаю сомневаться в том, что вы понимаете для чего сия функция - она не стимулирует нажатия клавиш, она вызывает определённую функцию при нажатии определённых клавиш пользователем.
Возможно имелась в виду Send() а не HotKeySet()?
Цитата sashadeg:
я AutoIt с середины февраля этого года начал использовать... а до этого ВООБЩЕ ничего и никакого языка даже мельком не знал
[решено] Временное отключение HotKeySet
Вот теперь вы попали, придётся учить до конца
- И если начали учить недавно, это ещё не значит что для вас не существует справки и прочей внешней информации, кой в ести море!-
sashadeg
Re: [решено] Временное отключение HotKeySet
Цитата Creat0R:
Я начинаю сомневаться в том, что вы понимаете для чего сия функция - она не стимулирует нажатия клавиш
аааа.... Чёрт!!! простите, я перепутал, просто щас только что с одним парнем разговаривали про AutoIt, про send()... Вот я и збрякал не то...
Цитата Creat0R:
вы ещё не поняли как работают функции в аутоите?
Ты прав... (не представляешь себе, как я был рад когда узнал что msgbox возвращает определённые цифры)
Цитата Creat0R:
Вот теперь вы попали
Да я знаю... 3 день подряд от компа не отхожу (делаю перерыв на 8 часов, когда на работу ухожу xD) прихожу и опять... за 3 суток спал 9 часов... (подумать только, что я могу делать 3 суток с таким "ОГРОМНЫМ" обьёмом знаний
)
===============
Хватит ко мне на Вы обращаться... ты меня лет на 9-10 старше... Или Вы такой вежливый?
Я начинаю сомневаться в том, что вы понимаете для чего сия функция - она не стимулирует нажатия клавиш
[решено] Временное отключение HotKeySet
аааа.... Чёрт!!! простите, я перепутал, просто щас только что с одним парнем разговаривали про AutoIt, про send()... Вот я и збрякал не то...
Цитата Creat0R:
вы ещё не поняли как работают функции в аутоите?
[решено] Временное отключение HotKeySet
Ты прав... (не представляешь себе, как я был рад когда узнал что msgbox возвращает определённые цифры)
Цитата Creat0R:
Вот теперь вы попали
[решено] Временное отключение HotKeySet
Да я знаю... 3 день подряд от компа не отхожу (делаю перерыв на 8 часов, когда на работу ухожу xD) прихожу и опять... за 3 суток спал 9 часов... (подумать только, что я могу делать 3 суток с таким "ОГРОМНЫМ" обьёмом знаний
)===============
Хватит ко мне на Вы обращаться... ты меня лет на 9-10 старше... Или Вы такой вежливый?

-
Creat0R
Re: [решено] Временное отключение HotKeySet
Цитата sashadeg:
Ты прав... (не представляешь себе, как я был рад когда узнал что msgbox возвращает определённые цифры)
Я про UDF, пользовательские функции...
По поводу Send... в недавних версиях появилась такая класная функция, называется SendKeepActive(), она предназначена как раз (ну, почти, см. далее) для твоего случая:
Код:
Но если нужно посылать нажатия только если окно активное минимизировано, то тут как раз и нужна пользовательская функция:
Код:
Цитата sashadeg:
Хватит ко мне на Вы обращаться... ты меня лет на 9-10 старше... Или Вы такой вежливый?
Ну во-первых, я и вправду (стараюсь быть
) вежливый. Я просто не знаю сколько кому лет, вот и предпочитаю всех на «Вы» называть, чтобы не гадать 
Ты прав... (не представляешь себе, как я был рад когда узнал что msgbox возвращает определённые цифры)
[решено] Временное отключение HotKeySet
Я про UDF, пользовательские функции...
По поводу Send... в недавних версиях появилась такая класная функция, называется SendKeepActive(), она предназначена как раз (ну, почти, см. далее) для твоего случая:
Код:
Код: Выделить всё
;Это позволит активировать окно пока необходимо посылать нажатия
SendKeepActive("Заголовок")
While 1
Send("aaabbbccc")
Sleep(1000)
WEndНо если нужно посылать нажатия только если окно активное минимизировано, то тут как раз и нужна пользовательская функция:
Код:
Код: Выделить всё
;Вызов функции:
;"aaabbbccc" это посылаемы символы
;0 это флаг функции Send()
;а "Заголовок Окна" это... ну оно вроде и так понятно что это :)
_SendEx("aaabbbccc", 0, "Заголовок Окна")
;Этот блок ставим в конец скрипта,
;а то что выше можно дублировать и изменять параметры,
;это и называется вызов заданной функции
Func _SendEx($sKeys, $iFlag=0, $sTitle="[ACTIVE]")
If Not BitAND(WinGetState($sTitle), 16) Then Return 0
Send($sKeys, $iFlag)
EndFuncЦитата sashadeg:
Хватит ко мне на Вы обращаться... ты меня лет на 9-10 старше... Или Вы такой вежливый?
[решено] Временное отключение HotKeySet
Ну во-первых, я и вправду (стараюсь быть
) вежливый. Я просто не знаю сколько кому лет, вот и предпочитаю всех на «Вы» называть, чтобы не гадать 
-
sashadeg
Re: [решено] Временное отключение HotKeySet
Цитата Creat0R:
нужно посылать нажатия только если окно активное минимизировано
Мы друг друга видимо не поняли... Мне send() не нужно... В моей программе кнопки numpad используются как горячии клавиши... Но когда окно программы РАЗВЕРНУТО, то не желательно чтобы они всё ещё были "горячими", а на время приостановили свою деятельность назначенную им HotKeySet
P.S. Я делаю программу которая будет пропечатывать текст заданный в Input'e и закрепленный за определённой клавишей numpad-клавиатуры (с 1 по 9) (как ты понял, здесь будет испольоваться send
)
нужно посылать нажатия только если окно активное минимизировано
[решено] Временное отключение HotKeySet
Мы друг друга видимо не поняли... Мне send() не нужно... В моей программе кнопки numpad используются как горячии клавиши... Но когда окно программы РАЗВЕРНУТО, то не желательно чтобы они всё ещё были "горячими", а на время приостановили свою деятельность назначенную им HotKeySet
P.S. Я делаю программу которая будет пропечатывать текст заданный в Input'e и закрепленный за определённой клавишей numpad-клавиатуры (с 1 по 9) (как ты понял, здесь будет испольоваться send
)