Недавние сообщения

Страницы: 1 2 [3] 4 5 ... 10
21
Стол заказов / Re: Распознавание числа на экране
« Последний ответ от Garrett Отправлен Вчера в 21:35:35 »
mv6677  [?]
Цитировать
Открываю картинку, размещаю ее в центре экрана.
Распакуйте архив в место ваших скриптов, откройте скрипт 24264.au3 в StiTE и нажмите F5. Файл с вашей картинкой (в архиве) скрипт сам найдёт.
22
paa13
Цитировать
ведь эти названия и так объявляются в массиве
И я должен был об этом догадаться?! :stars:

Цитировать
еслиб был вариант искать тока по части названия
Так он есть. У функции _UIA_GetControlTypeElement за это отвечает последний параметр. Но для вас она медленная.
Ещё поиск по частичному совпадению есть у функций _UIA_ElementFindInArray и _UIA_FindElementsInArray. Но предварительно нужно найти все необходимые элементы через _UIA_FindAllElements или _UIA_FindAllElementsEx.


Добавлено: Вчера в 19:37:25
Но это всё "рукописные" функции. Поддержка частичного совпадения значений свойств на уровне интерфейса UIAutomation отсутствует.
23
Цитировать
Код: AutoIt [Выделить]
$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[RegexpTitle:- Google Chrome]", "", "Chrome_RenderWidgetHostHWND1"))

Спасибо! Даже визуально ускорила сканирование

Цитировать
Код: AutoIt [Выделить]
$oCond1 = _UIA_CreatePropertyCondition("Name", "Краска Empis - белая")
$oCond2 = _UIA_CreatePropertyCondition("Name", "Краска Empis - красная")


ведь эти названия и так объявляются в массиве       
Код: AutoIt [Выделить]
Global $lists[7] = [6, $text1, $text2, $text3, $text4, $text5, $text6]
$oCond2 = _UIA_CreatePropertyCondition("Name", $lists[$i])


да и функция _UIA_CreateLogicalCondition как я понимаю поддерживает только два условия, это просто кода будет на две страницы.....

Красок их порядка 40-50 наименований, а вот цветов может еще 10 каждой и это получается очень много условий, еслиб был вариант искать тока по части названия
Код: AutoIt [Выделить]
Global $lists[7] = [6, "Краска Empis", "Краска ЛАКРА", $text3, $text4, $text5, $text6]

24
paa13
Цитировать
как теперь искать совпадения не полного имени
Во-о-от. Теперь мы понимаем, почему медленно работает функция _UIA_GetControlTypeElement ;)
А если использовать условия, то пробуйте так
Код: AutoIt [Выделить]
        $oCond1 = _UIA_CreatePropertyCondition("Name", "Краска Empis - белая")
        $oCond2 = _UIA_CreatePropertyCondition("Name", "Краска Empis - красная")
        $oCondOr = _UIA_CreateLogicalCondition($oCond1, "OR", $oCond2)
        $oCond3 = _UIA_CreatePropertyCondition("ControlType", $UIA_TextControlTypeId)
        $oCondAnd = _UIA_CreateLogicalCondition($oCondOr, "AND", $oCond3)
        $oneElement = _UIA_GetElementFromCondition($oParent, $oCondAnd)

Если эти названия только у текстов, то можно сразу искать по $oCondOr.

Кстати. Ещё немного ускорить поиск в Chrome можно, если искать не от главного окна, а от элемента отображения страницы
Код: AutoIt [Выделить]
$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[RegexpTitle:- Google Chrome]", "", "Chrome_RenderWidgetHostHWND1"))

25
Стол заказов / Re: Распознавание числа на экране
« Последний ответ от mv6677 Отправлен Вчера в 18:30:09 »
Garrett , не работает.
Открываю картинку, размещаю ее в центре экрана.

Запускаю ваш скрипт. Выдает следующую ошибку: "Error: Subscript used on non-accessible variable."
26
Цитировать
_UIA_GetControlTypeElement

Спасибо еще раз, опять загвоздка  :(
Не могу понять как теперь искать совпадения не полного имени, а части его...

Например:
Краска Empis - белая
Краска Empis - красная

поиск тока названия Краска Empis, чтобы и ту и ту надпись находил
27
OffTopicpaa13
Цитировать
программа Гугл хром 58
По моим замерам _UIA_GetControlTypeElement обрабатывает примерно одну строку за миллисекунду (300 строк за 290 мс, 1500 строк за 1400 мс). Использование _UIA_GetElementFromCondition в три раза быстрее (100 мс и 450 мс соответственно). Но так и должно быть, т.к. _UIA_GetControlTypeElement содержит цикл сравнения значений найденных элементов.
28
Версия AutoIt: 3.
3.3.14.0
Описание:
Доброго дня, всем
Нужно чтобы после запуска скомпилированного проекта, создавался HTML файл, но чтобы после названия адреса сайта шли рандомные буквы, пример есть сайт http://сайт.ru/HDSVNKSAQHР
И чтобы создавалась простенькая таблица на 2x2
Надеюсь все поймут про какую таблицу я говорю
Примечания:
Пример таблицы во вложении
29
Общие вопросы по AutoIt / Re: Кодировка кирилицы
« Последний ответ от VadimKHL Отправлен Вчера в 17:49:55 »
Спасибо! Помогло.
30
Цитировать
Перебрать 300 строк - это пара десятков миллисекунд. Либо вы не всё видите. Либо у программы проблемы совместимости с IUIAutomation. Либо вы не там замеры делаете.

Спасибо, этот вариант гораздо быстрее сканирует!
Без галочек моментально (1 сек) , с 20-30ю примерно около 3сек.

Цитировать
Либо у программы проблемы совместимости с IUIAutomation. Либо вы не там замеры делаете.

программа Гугл хром 58
Страницы: 1 2 [3] 4 5 ... 10