Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

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

> Без описания
barok2
Отправлено: 21 Октября, 2014 - 10:17:19
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2014  
Репутация: 0




В редакторе Кибор выделение текста, взятие в карман, вставка из кармана с клавиатуры работает нормально, но не показывается выделение текста. А с ним удобнее.... Улыбка Работает только выделение мышкой.
(Добавление)
При сохранении картинки в окне "графика" файла Image_1.bmp, появляется файл Image_1.bmp.bmp
(Добавление)
Может в окно "имя файла" не стоит переносить расширение?
А то нажимаешь 1 букву сохраненного файла, выскакиает окошко с именами с этой буквы, выбираешь подсказку, в итоге сохраняется файл с двойным расширением.
(Добавление)
На вкладку "графика"/Переменная изображения=Image_6 Я меняю на Image_1 однако в нижеследующей строчке ничего не меняется, так и остается ..... Image_6
(Добавление)
У меня не с первого раза получилось, поэтому хотелось бы вернуть наименование Файла и ячеек памяти снова к 1. А как?
(Добавление)
А нельзя сделать так, чтобы в mesgebox можно было сообщение выделять и копировать в карман?
У меня пишет ошибку, loadimage (#Image_01[0][0], .......
однако строка скрипта другая: loadimage (#Image_0[0][0].....
(Добавление)
А отладчик не планируется?
 
 Top
barok2
Отправлено: 22 Октября, 2014 - 07:10:34
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2014  
Репутация: 0




Вроде вот так еще работает: без goto Улыбка
for (win not; window ("Безымянный - Блокнот", "Notepad", -1)==0;sleep(50)){}
(Добавление)
Не очень понятно, зачем надо ставить win not;
(Добавление)
При работе с примером "калькулятор" выяснилось, что в блокнот часто вставляется не содержимое окна калькулятора, а содержимое "кармана", которое там было.
При копировании при помощи клавиатуры такого нет.
(Добавление)
Но это случается при множестве открытых окон калькулятора.
 
 Top
Kibor
Отправлено: 22 Октября, 2014 - 08:13:13
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8095
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 barok2 пишет:
Вроде вот так еще работает: без goto Улыбка
for (win not; window ("Безымянный - Блокнот", "Notepad", -1)==0;sleep(50)){}
(Добавление)
Не очень понятно, зачем надо ставить win not;


что такое for (win not; window ("Безымянный — Блокнот", "Notepad", -1)==0;sleep(50)){}...??

это
win not;
a: if (window ("Безымянный — Блокнот", "Notepad", -1)==0)
{
sleep(50);
goto a;
}

в for надо 3 параметра. это правила синтаксиса.
 
 Top
barok2
Отправлено: 22 Октября, 2014 - 08:35:31
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 12
Дата рег-ции: Окт. 2014  
Репутация: 0




В скрипте "Ожидание изображения на экране и пограммное нажатие клавиатуры."
в первом открытом окне блокнота копия окна калькулятора не показывалась. Только во втором и далее. Уменьшил время ожидания с 1 сек на 50мс, стало работать нормально.
(Добавление)
[quote=Kibor]
 barok2 пишет:

в for надо 3 параметра. это правила синтаксиса.

в си вроде в for можно все 3 параметра опустить.
(Добавление)
 Kibor пишет:


Вроде если 2 параметр true, то цикл повторяется.
(Добавление)
CODE:
//int Image_0[23][15];//Масив для хранения расунка 52 загруженного с файла в память
int PosX_0[1], PosY_0[1];//Сюда поместятся координаты найденного рисунка на экране. В нашем

int Image_0[11][15];loadimage (#Image_0[0][0], "D:\Games\Kibor\bas\Скрипты\Ожидание\Image_0.bmp");
int color, xe, ye;
//getdisplay(color, xe, ye);//Узнать разрешение экрана
//сканируем экран и ждем появления на нем загруженного изображения. в нашем случае числа 52
//n: if (findimage(1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, xe, ye, -1)==0)
//{
//sleep(50);//ждем 50 мсек. для снижения нагрузки процессора
//goto n;//идем назад на проверку наличия изображения на экране
//} //? из блока переход....

for(getdisplay(color, xe, ye); findimage(1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, xe, ye, -1)==0; sleep(50)){};

//когда изображение появилось запускаем блокнот
start("C:\Windows\System32\notepad.exe");

//win not;
//e: not=window ("Безымянный - Блокнот", "Notepad", -1);//Указательна на окно Блокнот
//if (not==0)//Если указатель не получен еще. блокнот не успел запуститься......
//{sleep(50);goto e;}
for (win not; (not=window ("Безымянный - Блокнот", "Notepad", -1))==0; sleep(50));{};

win cal=window ("Калькулятор", "CalcFrame", -1);//Указатель на калькулятор

activate(cal);//передать фокус на калькулятор
sleep(50);// ждать пол секунды

//копировать значение с калькулятора в буфер обмена с помощью грячих клавиш CTRL C
keydown(CONTROL);keydown('c');//нажать CTRL C
sleep(50);
keyup('c');keyup(CONTROL);//отпустить CTRL C

activate(not);//передать фокус на блокнот
sleep(50);// ждать секунду

//вставить с буфера обмена в блокнот нажав CTRL V
keydown(CONTROL);keydown('v');//нажать CTRL V
sleep(50);
keyup('v');keyup(CONTROL);//отпустить CTRL V

(Добавление)
Нет, я хотел сказать не опустить параметры, а использовать иначе, не так как обычно. 1 параметр выполняется первым. Затем второй параметр-условие выполнения цикла. И третий параметр-выполняется третим. Второй и третий выполняются каждый цикл. первый-только раз.
(Добавление)
Это код вашего рабочего примера. С изменением на цикл for (без goto). Тоже работает.
 
 Top
Kibor
Отправлено: 22 Октября, 2014 - 09:00:22
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8095
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




 barok2 пишет:
в си вроде в for можно все 3 параметра опустить.

'это не си.
это язык с си образным обрезанным синтаксисом, который я сам придумал. просто за основу взял этот синтаксис. у него те правила которые обрабатываются синтаксическим анализатором Кибор.

for (win not; (not=window ("Безымянный - Блокнот", "Notepad", -1))==0; sleep(50));{};
зачем выдумывать свое? есть простой синтаксис Кибор..
это не правильно. так не допускается все равно что
if ((not=window ("Безымянный - Блокнот", "Notepad", -1))==0)
в Кибор нет так нельзя.
(Добавление)
 barok2 пишет:
Второй и третий выполняются каждый цикл. первый-только раз.

ну да. так и работает.
(Добавление)
 barok2 пишет:
for(getdisplay(color, xe, ye); findimage(1, #Image_0[0][0], 255, #PosX_0[0], #PosY_0[0], 0, 0, xe, ye, -1)==0; sleep(50)){};

это правильно.
 
 Top
007wan
Отправлено: 08 Сентября, 2019 - 11:53:24
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1838
Дата рег-ции: Март 2017  
Репутация: -2




 Kibor пишет:
Неоднократно предлагали...
Никогда не будет. Это было раньше и отключено, так как конфликтует с горячими кнопками управления. Неприятно видеть когда после остановки скрипта контр шифт z в редакторе отменен последний код..
Да, но ведь действие при нажатии можно отключить при запуске скрипта, так же как и самих клавиш, которые останавливают скрипт. Достаточно ввести переменную - флаг и щелкать ее при запуске или остановки скрипта.
 
 Top
Demon
Отправлено: 23 Апреля, 2020 - 19:58:30
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 1
Дата рег-ции: Апр. 2020  
Репутация: 0




Добрый день
Есть предложение/просьба. Реализовать в поиске изображения алгоритм IN, тоесть что бы в один блок можно было добавлять несколько картинок, это поможет значительно сократить схемы. Так же очень хотелось бы видеть инструмент, позволяющий отслеживать на каком блоке произощло окончание работы программы. Лог отладки для меня лично мало информативен в этом случае...
 
 Top
ivantu
Отправлено: 13 Мая, 2020 - 15:10:21
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 732
Дата рег-ции: Нояб. 2013  
Репутация: 14




Есть идея, для удобства добавить на вкладки какое то визуальное обозначение что во вкладке были какие то правки, и они не были сохранены, типо звездочки * как в текстовых документах, иногда спасает много времени для поиска не работоспособности скрипта, когда прыгаешь с вкладки на вкладку и забываешь сохранить...
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Предложения по программе »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by