|
|
|
Вопрос по рабочим столам в Win10 |
|
|
Glosha |
5.8.2019, 10:20
|
Neophyte
Сообщений: 47
Регистрация: 4.8.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.375
|
Цитата(Fors1k @ 4.8.2019, 23:53) код
Код set #ld linedelay set linedelay 40 // set #cw 1 // номер рабочего стола, в котором сейчас находится окно. set #tw 4 // в какой стол переместить set workwindow 394820 // окно, которое будем перемещать // showwindow workwindow if #cw < #tw set #a 2 else set #a 1 end_if sendex_down {WindowsLeft}{Tab} sendex_up {WindowsLeft}{Tab} wait 350 sendex_down ~{F10} sendex_up ~{F10} wait 15 sendex {Down} sendex {Down} sendex {Down} sendex {Right} repeat #tw - #a sendex {Down} end_repeat sendex {Enter} sendex {Escape} set linedelay #ld end_script Спасибо огромное!
|
|
|
|
Glosha |
5.8.2019, 14:43
|
Neophyte
Сообщений: 47
Регистрация: 4.8.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.375
|
Цитата(Fors1k @ 4.8.2019, 23:53) код
Код set #ld linedelay set linedelay 40 // set #cw 1 // номер рабочего стола, в котором сейчас находится окно. set #tw 4 // в какой стол переместить set workwindow 394820 // окно, которое будем перемещать // showwindow workwindow if #cw < #tw set #a 2 else set #a 1 end_if sendex_down {WindowsLeft}{Tab} sendex_up {WindowsLeft}{Tab} wait 350 sendex_down ~{F10} sendex_up ~{F10} wait 15 sendex {Down} sendex {Down} sendex {Down} sendex {Right} repeat #tw - #a sendex {Down} end_repeat sendex {Enter} sendex {Escape} set linedelay #ld end_script подскажи еще пожалуйста... мне нужно запустить продолжение скрипта в нужно время: например запустил скрипт в любое удобное время, а он в 10 утра продолжил исполнять скрипт дальше.
|
|
|
|
Glosha |
7.8.2019, 15:05
|
Neophyte
Сообщений: 47
Регистрация: 4.8.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.375
|
Цитата(Fors1k @ 4.8.2019, 23:53) код
Код set #ld linedelay set linedelay 40 // set #cw 1 // номер рабочего стола, в котором сейчас находится окно. set #tw 4 // в какой стол переместить set workwindow 394820 // окно, которое будем перемещать // showwindow workwindow if #cw < #tw set #a 2 else set #a 1 end_if sendex_down {WindowsLeft}{Tab} sendex_up {WindowsLeft}{Tab} wait 350 sendex_down ~{F10} sendex_up ~{F10} wait 15 sendex {Down} sendex {Down} sendex {Down} sendex {Right} repeat #tw - #a sendex {Down} end_repeat sendex {Enter} sendex {Escape} set linedelay #ld end_script Обновился на вин 1903 и перестало работать, после вин +таб не прожимает выбора стола
|
|
|
|
Fors1k |
7.8.2019, 16:36
|
Journeyman
Сообщений: 497
Регистрация: 19.12.2017 Группа: Пользователи Наличность: 2380
Пользователь №: 18.746
|
Цитата(Glosha @ 7.8.2019, 15:05) Обновился на вин 1903 и перестало работать, после вин +таб не прожимает выбора стола
Попробуй этот
в первой строке: откуда куда окноКод call vDesktop 1 2 5116634 end_script proc vDesktop #iz #v #handle set linedelay 0 set workwindow #handle showwindow workwindow sendex_down {WindowsLeft}{Tab} sendex_up {WindowsLeft}{Tab} if #iz < #v set #a 2 else set #a 1 end_if wait 400 sendex_down ~{F10} sendex_up ~{F10} sendex {Down} sendex {Down} sendex {Down} sendex {Right} repeat #v - #a sendex {Down} end_repeat sendex {Enter} sendex {Escape} end_proc Этот работает побыстрее. Если не срабатывает, то прибавляй к вэйту по 10, и пробуй, пока не заработает. У всех разная скорость анимации, тебе надо подобрать свою, что бы он успевал. Лучше подбирать на самом дальнем столе, из всех, которые будут использоваться. Чем дальше стол, из которого нужно перетащить окно, тем больше нужен вэйт. У меня для 8го стола вышло 400мс для безошибочной работы. То есть, если у тебя 3 стола, то подбирай для третьего, и т.д..
--------------------
Для связи
|
|
|
|
Glosha |
7.8.2019, 17:21
|
Neophyte
Сообщений: 47
Регистрация: 4.8.2019 Группа: Пользователи Наличность: 0
Пользователь №: 19.375
|
Цитата(Fors1k @ 7.8.2019, 16:36) Попробуй этот
в первой строке: откуда куда окноКод call vDesktop 1 2 5116634 end_script proc vDesktop #iz #v #handle set linedelay 0 set workwindow #handle showwindow workwindow sendex_down {WindowsLeft}{Tab} sendex_up {WindowsLeft}{Tab} if #iz < #v set #a 2 else set #a 1 end_if wait 400 sendex_down ~{F10} sendex_up ~{F10} sendex {Down} sendex {Down} sendex {Down} sendex {Right} repeat #v - #a sendex {Down} end_repeat sendex {Enter} sendex {Escape} end_proc Этот работает побыстрее. Если не срабатывает, то прибавляй к вэйту по 10, и пробуй, пока не заработает. У всех разная скорость анимации, тебе надо подобрать свою, что бы он успевал. Лучше подбирать на самом дальнем столе, из всех, которые будут использоваться. Чем дальше стол, из которого нужно перетащить окно, тем больше нужен вэйт. У меня для 8го стола вышло 400мс для безошибочной работы. То есть, если у тебя 3 стола, то подбирай для третьего, и т.д.. выскакивает в самом начале ps. фиксанул твой старый код, там лишний "sendex {Down}" был, просто стояла без задержек и не успевал сообразить, что происходило.
Эскизы прикрепленных изображений
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|