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

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

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

> Описание: Передача параметров в функции и возврат с функции результата
Kibor
Отправлено: 24 Декабря, 2016 - 04:08:09
Post Id



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


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




Доработка Визуального редактора.

Формат изменен. Для открытия старого формата выбрать в меню ФАЙЛ - ОТКРЫТЬ СТАРУЮ ВЕРСИЮ ДО 5.21 (Если проект сохранятся в 5.20 или 5.19)
Или ОТКРЫТЬ СТАРУЮ ВЕРСИЮ ДО 5.19 (Если проект сохранятся до 5.19)


1) Доработал получение указателя в фоновом режиме. Можно выбрать ОКНО - КОНТРОЛ

=============================================================

2) Добавил отдельную галочку позволяющую скрыть текст в Блоках кода. Что бы не мешал.


=============================================================

3) Реализована возможность передавать в функции параметры.
В диалоговом окне свойства блока функции появилось соответствующее поле.

Что это такое и зачем оно надо..
Пример:
CODE:
int s;
s=symma(5, 2);//Вызываем функцию для сложения двух чисел.
//В виде параметров передаем ей 2 числи типа int
//функция нам возвращает сумму и записываем в переменную s

messagebox (s);


//функия принимает в виде параметров 2 целых числа типа int
function symma(int a, int b)
{
return a+b;//С помощью оператора return возвращает сумму принимаемых чисел
}



Как это реализовать в визуальном редакторе:
Объявляем переменную s типа int в блоке Старт.
Создаем блок кода в котором пишем
CODE:
s=symma(5, 2);//Вызываем функцию для сложения двух чисел.
//В виде параметров передаем ей 2 числи типа int
//функция нам возвращает сумму и записываем в переменную s
messagebox (s);


Создаем функцию symma. Указываем в поле параметров
CODE:
int a, int b


В блоке функции создаем блок кода и прописываем в нем
CODE:
return a+b;


Внимание! Переменные объявленные в параметрах функции или в блоке кода в функции видны только в этой функции.
Поэтому они могут иметь одинаковые имена в разных функциях и блоке кода и быть при этом разными переменными.
 
 Top
Dantes3000
Отправлено: 24 Декабря, 2016 - 23:13:09
Post Id



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


Покинул форум
Сообщений всего: 1464
Дата рег-ции: Июнь 2016  
Репутация: 58




Сделал скрипт "клиенту", у него перестало работать в фоновом режиме. У меня всё работает, у него тоже, если запускать сам код через кибор. Но если через exe с сервера - в фоне не хочет. Скрипт называется ibibab
(Добавление)
Прога обновилась - теперь работает вроде.
 
 Top
Kibor
Отправлено: 24 Декабря, 2016 - 23:28:28
Post Id



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


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




Скрипт собран с параметрами получения указателя на КОНТРОЛ.
Указатель получается в момент запуска на контрол-окно которое под мышкой окажется после того как нажать на пуск.
При запуске с кибор и с exe координаты кнопок мыши не одинаковые.
быстрее всего получает указатель на другой объект.
При запуске сдвинуть окно exe так что бы мышь при запуске была так же как и в кибор.
Так же разобраться что такое окно и что такое контрол.
Понять это можно в вкладке графика получив изображение к примеру калькулятора и переключив галки окно-контрол-экран.
Пример.. Контрол в середине.

Нажмите для увеличения
 
 Top
Dantes3000
Отправлено: 24 Декабря, 2016 - 23:54:43
Post Id



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


Покинул форум
Сообщений всего: 1464
Дата рег-ции: Июнь 2016  
Репутация: 58




Я пробовал с привязкой и к окну, и к контролу...всё равно не работало. Остальное не особо понял, но окно с контролом различаю. Что мне надо было сделать, чтобы всё работало?
 
 Top
Kibor
Отправлено: 25 Декабря, 2016 - 08:24:53
Post Id



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


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




 Dantes3000 пишет:
Что мне надо было сделать, чтобы всё работало?

?
Сделать так, что бы получался правильный указатель. От чего это зависит я ответил выше.
Можно еще в блоке кода сразу после старт самому получить указатель и написать так
w_KIB=window ("Калькулятор", "CalcFrame", -1);
(Добавление)
В обновление я сделаю возможность задавать указатель жестко и сниму видео поясняюшее как это надо делать.
 
 Top
itatde
Отправлено: 25 Декабря, 2016 - 13:04:36
Post Id



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


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




Начиная с 5,19 в клиенте и мозилле перестало захватывать окно на скрипте написанном в более поздней версии.
С версией 5,18 работает. Пришлось блокировать ей доступ в интернет, благо сохранилась на ноутбуке.
Сорри игру светить не буду Смущение
 
 Top
Kibor
Отправлено: 25 Декабря, 2016 - 15:16:38
Post Id



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


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




 itatde пишет:
Начиная с 5,19 в клиенте и мозилле перестало захватывать окно на скрипте написанном в более поздней версии.
С версией 5,18 работает. Пришлось блокировать ей доступ в интернет, благо сохранилась на ноутбуке.
Сорри игру светить не буду Смущение

Какая ерунда..
Пользуйтесь на здоровье старой версией, в которой нет настроек получения указателя.

Создан в виз редакторе. фоновый режим.
CODE:
win w_KIB;
int ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB;

start_();

savescreen("C:\1.bmp", 100, 100, 500, 500, w_KIB);
start("C:\1.bmp");



function start_()
{
pause(1000);
int x, y;
getmouse(x, y);
w_KIB=getwindow(0, x, y);
ex_KIB=w_KIB.widthclient; ey_KIB=w_KIB.heightclient;
}
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« О программе Кибор »


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




Powered by