В Кибор есть несколько функций для анализа изображения:
getcolor()
scanpixel()
findcolor()
findimage()
finddynamic()
getcolor() и scanpixel() работают только с реальным изображением на экране.
findcolor() findimage() и finddynamic() могут работать как с экранным изображением так и с перекрытыми окнами.
За этот режим работы отвечает последний параметр в этих функциях. Он может быть или указателем на окно или -1 - работа по экрану..
Однако работа с перекрытыми окнами (анализ изображения) возможен только на win 7 64 с аэро. Проверить или на машине будет работать с перекрытыми окнами можно так:
Кибор должен быть в оконном режиме. Перейти на Графику. Навести мышь на окно позади Кибор. Кибор должен его перекрывать. Нажать контр шифт S. Если окно Кибор не будет на скрине в графическом редакторе, будет работать в перекрытых окнах. Настройки Графического редактора - (окно) или (контрол).
Iret пишет: допустим я открыл 4 окна расположил их по частям экрана(не перекрывая друг друга) будет ли с изображениями в окнах он работать без привязки?
А чем это отличается от работы с экраном? Естественно.
В принципе ничего не мешает реализовать свою функцию getcolor() которая будет возвращать цвет пикселя в перекрытом окне (для примера. можно реализовать практически любой функционал нужный)..
Для этого пишем функцию:
CODE:function new_getcolor(int x, int y, win wnd)
{
int a[1][1];
screen (#a[0][0], x, y, x+1, y+1, wnd);
return a[0][0];
}
Записываем ее в конец текста скрипта и используем в скрипте в таков виде:
CODE:new_getcolor(58, 103, w);
Параметры:
1 и 2 оконные координаты
3 указатель на окно.
Возвратит как и getcolor() цвет пикселя в указанных координатах, но работает с перекрытым окном тоже. При наличие условий указанных выше... |