Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Выделение текста определённой длины

Страниц (1): [1]
 

1. BonD - 24 Февраля, 2016 - 01:25:16 - перейти к сообщению
Почему при добавлении в конец скрипта со страницы(для просмотра ссылки Вам необходимо авторизоваться) кода:
sleep(50);
keydown(SHIFT);key(LEFT);
sleep(50);
keyup(SHIFT);
клавиша shift, такое ощущение, что не зажимается, а просто нажимается? Или подскажите другой способ выделения текста определённой длины (для последующего копирования)...
2. Kibor - 24 Февраля, 2016 - 02:49:52 - перейти к сообщению
 BonD пишет:
keydown(SHIFT);key(LEFT);
sleep(50);
keyup(SHIFT);

может по этому?
 Цитата:
keydown(SHIFT);mouse(LEFT, 501, 331);
sleep(50);
keyup(SHIFT);
3. DeLiberate - 24 Февраля, 2016 - 09:28:51 - перейти к сообщению
 Kibor пишет:

может по этому?
 Цитата:
keydown(SHIFT);mouse(LEFT, 501, 331);
sleep(50);
keyup(SHIFT);

Автор имел в виду именно стрелку влево.
А keydown(16);
т.е. keydown(SHIFT);
и правда работает некорректно.
Вот это, к примеру, не работает.
CODE:
start ("C:\Windows\System32\notepad.exe");
win test=window ("Безымянный — Блокнот", "Notepad", -1);
pause(1000);
activate(test);//запустили блокнот
pause(1000);
key("123456789");//печатаем текст, просто для теста
keydown(16);//нажимаем шифт
pause(400);
key(LEFT);//нажимаем стрелку влево
pause(500);
key(LEFT);//несколько раз
pause(500);
key(LEFT);//сколько раз нажали
pause(500);
key(LEFT);//столько и должно выделится символов с конца
pause(500);
keyup(16);//отпускаем шифт
/*в итоге курсор в блокноте просто передвинется на 4 символа влево,
не выделив при этом текст, вот такие дела.*/
4. Kibor - 24 Февраля, 2016 - 10:01:17 - перейти к сообщению
 DeLiberate пишет:
Вот это, к примеру, не работает.

Да?
А если подождать пока блокнот запуститься и потом получать его указатель??
 DeLiberate пишет:
start ("C:\Windows\System32\notepad.exe");
pause (1000);
win test=window ("Безымянный — Блокнот", "Notepad", -1);


а тот пример не работал потому что надо фокус было передать на окно блокнота. и все работает.
5. DeLiberate - 24 Февраля, 2016 - 10:25:58 - перейти к сообщению
 Kibor пишет:

А если подождать пока блокнот запуститься и потом получать его указатель??
а тот пример не работал потому что надо фокус было передать на окно блокнота. и все работает.

Все равно это
CODE:
start ("C:\Windows\System32\notepad.exe");
pause(2000);
win test=window ("Безымянный — Блокнот", "Notepad", -1);
pause(1000);
activate(test);//запустили блокнот
лишнее, т.к. блокнот получает фокус при открытии.
К сожалению проблема не в фокусе, текст печатается в блокноте, курсор двигается влево на 4 знака, но текст не выделяет, т.е. шифт не зажимается.
6. Kibor - 24 Февраля, 2016 - 10:44:41 - перейти к сообщению
А почему у меня выделяется?
7. DeLiberate - 24 Февраля, 2016 - 11:18:50 - перейти к сообщению
 Kibor пишет:
А почему у меня выделяется?

Из-за разных конфигураций компьютера, полагаю.
У меня запуск этого скрипта выглядит так:


Кибор запущен с правами админа, вин 8.1 х64.
Думаю автору топика нужно попробовать копировать текст с помощью fread, если с шифтом не получится Хм
8. Kibor - 24 Февраля, 2016 - 11:28:12 - перейти к сообщению
num lock отключите..
(Добавление)
А вообще для выделения использовать можно
CODE:
win w=window (-1, "Edit", window ("Безымянный — Блокнот", "Notepad", -1));
postmessage(EM_SETSEL, 2, 7, w);
9. DeLiberate - 24 Февраля, 2016 - 11:35:51 - перейти к сообщению
 Kibor пишет:
num lock отключите..

Никогда бы не подумал, каким боком шифт к нум-паду относится?
Все заработало, я в шоке Ха-ха
10. Kibor - 24 Февраля, 2016 - 13:05:37 - перейти к сообщению
вообще то к нумпад относятся стрелки..
когда включен num lock команда идет на стрелки нумпада.
и теперь проверьте вручную как оно работает.. шифт + стрелка нумпад при вкл num lock

Powered by ExBB FM 1.0 Final