Что нового

[Окна, Диалоги] Перебрать элементы ListView, считать текстовые значения колонок

RomchegChe

Новичок
Сообщения
37
Репутация
1
Всем добрый день! Есть окно, у него элемент ListView32 , там данные в строках и колонках.
Как перебрать строки и получить текстовые значения колонок?
 

InnI

AutoIT Гуру
Сообщения
4,951
Репутация
1,446
Код:
For $i = 0 To ControlListView($hWnd, "", $ListView, "GetItemCount") - 1
  For $j = 0 To ControlListView($hWnd, "", $ListView, "GetSubItemCount") - 1
    ConsoleWrite(ControlListView($hWnd, "", $ListView, "GetText", $i, $j) & " ")
  Next
  ConsoleWrite(@CRLF)
Next
 
Автор
R

RomchegChe

Новичок
Сообщения
37
Репутация
1
сравнил скорость
Код:
$text = ControlListView($hWnd, "", $ListView, "GetText", $i, 0)
 $aItem = _GUICtrlListView_GetItem($ListView, $i,0)
 $text = $aItem[3]
 $text = _GUICtrlListView_GetItemText($ListView, $i ,0)


первый вариант самый быстрый. Но все таки при десятках тысяч строк - заметно тормозит. Нет ли решения, что бы ускорить работу этой функции?
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
RomchegChe

Предупреждение За нарушение правил форума (пункт В.11):
Любые отрывки AutoIt кода необходимо заключать в тег [autoit]
autoit.gif
(подробнее), а обычный код соответственно в тег [code]
code.gif
(подробнее). Также большие выдержки текста помещайте под тег [spoiler]
spoiler.gif
(подробнее), там где это поддерживается естественно. Как в случае с названием темы, также короткое и эргономичное сообщение привлекает больше внимания, и шансы на получение конкретного ответа увеличиваются.


С уважением, ваш Глобальный модератор.
 

WSWR

AutoIT Гуру
Сообщения
941
Репутация
363
RomchegChe
Вот здесь есть варианты, сравнение по скорости
http://autoit-script.ru/index.php?topic=12724.0
 
Верх