Author Topic: Помогите!!!  (Read 3418 times)

0 Members and 1 Guest are viewing this topic.

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Помогите!!!
« on: January 21, 2019, 04:18:34 PM »
Я не программер и в скриптах не разбираюсь.
Помогите с написанием скрипта на комбинацию клавиш с заданной цикличностью (повторением)
Суть в том, что в одной программе мне нужно много раз копировать строки и операция копирования выполняется исключительно с помощью данной комбинации клавиш:

последовательность клавиш: "Ctrl+k", "Up", "Enter"

Заранее признателен.
« Last Edit: January 21, 2019, 04:24:00 PM by vit »

4.У.В.@.К

  • Активный участник
  • ***
  • Posts: 117
    • View Profile
Re: Помогите!!!
« Reply #1 on: January 21, 2019, 09:26:17 PM »
Кот из дома, мыши в пляс! ;D Ща поможем! ;D
С "заданной цикличностью" непонятки. Можно сделать цикличное ожидание команды пользователя.
Запущенный скрипт будет ждать нажатия клавиши F4. Когда клавиша F4 будет нажата и отпущена скрипт выполнит нажатия "Ctrl+k", "Up", "Enter". А потом снова будет ждать...

Code: (clickermann) [Select]
WHILE(ISKEYDOWN(#F4) = 0)
   WAITMS(50)
END_CYC

WHILE(ISKEYDOWN(#F4) = 1)
   WAITMS(50)
END_CYC

KEYDOWN(#CTRL)
WAITMS(5)
KEYPRESS(#K)
WAITMS(5)
KEYUP(#CTRL)
WAITMS(5)

KEYPRESS(#UP)
WAITMS(5)

KEYPRESS(#ENTER)

Можно эту комбинацию прожимать и в автоматическом режиме через указанные промежутки времени, или по какому то условию. Так что нужно больше информации.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: Помогите!!!
« Reply #2 on: January 21, 2019, 09:40:39 PM »
Code: (clickermann) [Select]
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#K)
KEYUP (#CTRL)
WAITMS(500)

KEYPRESS(#UP)
WAITMS(500)

KEYPRESS(#ENTER)
WAITMS(500)

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Re: Помогите!!!
« Reply #3 on: January 21, 2019, 10:24:47 PM »
Уважаемые форумчане! когда я говорил о заданной цикличности я имел в виду что данное копирование должно повторяться заданное число раз.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: Помогите!!!
« Reply #4 on: January 21, 2019, 10:36:50 PM »
Уважаемые форумчане! когда я говорил о заданной цикличности я имел в виду что данное копирование должно повторяться заданное число раз.
Code: (clickermann) [Select]
FOR($a=0,$a<5) //вместо "5" пишем количество повторений
// все что тут находится, повториться 5 раз
END_CYC
halt

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Re: Помогите!!!
« Reply #5 on: January 21, 2019, 11:22:57 PM »
завтра на работе попробую)
обязательно отпишусь)

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Re: Помогите!!!
« Reply #6 on: January 22, 2019, 08:59:46 AM »
FOR($a=0,$a<35)
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#K)
KEYUP (#CTRL)
WAITMS(500)
KEYPRESS(#UP)
WAITMS(500)
KEYPRESS(#ENTER)
WAITMS(500)
END_CYC
halt

Как уменьшить время ожидания? пробовал. не получается(
и почему-то перепрыгивает на строчку выше заданной....той,которую надо размножить(
Циклов больше 32 не делает. (надо больше)В данном конкретном случае число циклов должно быть 35.
« Last Edit: January 22, 2019, 09:40:04 AM by vit »

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Re: Помогите!!!
« Reply #7 on: January 22, 2019, 01:51:23 PM »
Code: (clickermann) [Select]
$delay_time = 150 // Значение в миллисекундах
 
FOR($i = 35, $i > - 1, - 1) // Цикл от 35 до -1
   KEYDOWN (#CTRL)
   WAITMS (50)
   KEYPRESS (#K)
   KEYUP (#CTRL)
   WAITMS($delay_time)
   KEYPRESS(#UP)
   WAITMS($delay_time)
   KEYPRESS(#ENTER)
   WAITMS($delay_time)
END_CYC
 
HALT
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Re: Помогите!!!
« Reply #8 on: January 23, 2019, 05:03:06 PM »
не пойму что происходит:
вроде константу ввожу, но количество циклов время от времени меняется само собой по усмотрению программы
выделяю строчку для копирования, запускаю процесс, но курсор почему-то перепрыгивает на строчку выше и кликер начинает молотить, но не там.

что не так???

Shada

  • Освоившийся
  • **
  • Posts: 24
    • View Profile
Re: Помогите!!!
« Reply #9 on: January 23, 2019, 05:47:43 PM »
что не так???

Скорее всего в задании что-то не так:

последовательность клавиш: "Ctrl+k", "Up", "Enter"

"Up" - это "стрелка вверх" (поэтому и прыгает вверх)
"Ctrl+k" - это правильная комбинация?

vit

  • Зашел в гости
  • *
  • Posts: 6
  • Виталий
    • View Profile
Re: Помогите!!!
« Reply #10 on: January 24, 2019, 04:40:57 PM »
что не так???

Скорее всего в задании что-то не так:

последовательность клавиш: "Ctrl+k", "Up", "Enter"

"Up" - это "стрелка вверх" (поэтому и прыгает вверх)
"Ctrl+k" - это правильная комбинация?

- Всё верно, но почему работает криво - не пойму

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Помогите!!!
« Reply #11 on: January 25, 2019, 05:57:03 PM »
Да кто ж его знает что там у тебя с неизвестной программой.
Если эти нажатия происходят в начале скрипта, то первым действием должен быть клик по заголовку окна
для перевода на него фокуса - при запуске с кнопки  или
для снятия ALT при запуске горячими клавишами. Иначе у тебя по ALT активируется меню и в скрипте первый "Ctrl+k" не отрабатывает потому что сбрасывает фокус с меню.