Я хочу иметь возможность запускать таймер одновременно с тем, как я запускаю видео в медиаплеере classic, а также иметь возможность приостанавливать оба одновременно.

Допустим, я должен щелкнуть таймер в левом верхнем углу изображения, а затем нажать f1, иначе скрипт не работает ... также, если я хочу щелкнуть его снова после первого раза, когда он не работает усердно работать..

IMAGE with the idea of what i want to do

Я пробовал следующий код:

F1::
MouseClick, left, 146, 115
MouseClick, left, 87, 300
Return
2
Totto Bennington 1 Май 2019 в 06:22

3 ответа

Лучший ответ

Я полагаю, что добавление

CoordMode, Mouse, Screen

В верхней части вашего сценария поможет вам достичь того, что вы хотите сделать.

Тем не менее, я предлагаю вам использовать ControlClick вместо этого.

F1::
    ControlClick, x87 y300, Hourglass,, Left
    ControlClick, x100 y100, Media Player Classic,, Left
return

Это отправит щелчок по x и y относительно каждого окна независимо от того, находятся они сверху или нет (однако их нельзя свернуть)

(обратите внимание, что вам, вероятно, придется корректировать координаты x и y)

https://autohotkey.com/docs/commands/CoordMode.htm https://autohotkey.com/docs/commands/ControlClick.htm

1
fisknils 1 Май 2019 в 11:43

Из моего (ограниченного) опыта я считаю, что даже горячие клавиши будут выполнять действия последовательно, то есть одно за другим, в большинстве случаев задержка между щелчками будет незначительной, но не будет точной. Если таймер (Песочные часы) - это то, что вы создали сами, я бы, возможно, предложил добавить еще одну кнопку или горячую клавишу специально для этого варианта использования, который добавляет; например, задержка 0,5 с перед запуском таймера и последующим запуском носителя 0,5 с, что позволяет им работать в тандеме, но что касается запуска обоих приложений одновременно, я не знаю способа для этого.

Чтобы уточнить, что же было в действительности с приведенным выше кодом?

1
Daniel Gregory 1 Май 2019 в 09:57

Координаты MouseClick относятся к активному окну. Но поскольку окно сверху, это не значит, что оно активно. Итак, используйте WinActivate перед нажатием или измените CoordMode на screen.

1
scso 1 Май 2019 в 09:02