Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Обработать класс TStringGrid

Ответить
Настройки темы
Обработать класс TStringGrid

Аватара для Frost_Imp

Пользователь


Сообщения: 53
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png Буфер обмена02.png
(168.2 Kb, 18 просмотров)
Всем доброго времени суток!
Прошу помочь с проблемой следующего характера...
Есть программа, осуществляющая поиск. Результаты поиска представлены в виде таблицы класса TStringGrid. Результатов может быть от одного и до (в теории ) бесконечности. Нужно на каждой строке результата сделать ENTER ну и обработать дальше, не суть. Трабла в том, что средствами AutoIT v3 Info я не могу видеть разницу между строкой со вторым, например, результатом и строкой с третьим результатом. Другими словами, если я нахожусь в первой строке и при нажатии на кнопку down ЧТО-ТО изменилось - ништяк, есть еще один результат. Не изменилось - ну на нет и суда нет, делаем какие-то другие вещи.
Есть идеи, как можно в этом контроле понять, где 1 строка, а где вторая.

Отправлено: 15:45, 30-09-2009

 

Аватара для Sp01LeR

Пользователь


Сообщения: 60
Благодарности: 13

Профиль | Отправить PM | Цитировать


Твой скриншот ниочем не говорит...
Лучше скопируй сюда текст с вкладки "Summary" окна AutoIT v3 Info.

Отправлено: 19:42, 30-09-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Frost_Imp, "T*" - контролы Delphi, автоматизировать их проблематично , т.к. обычно не обрабатывают даже стандартные сообщения, хотя зависит от версии компоненты - надо проверять... вопрос уже поднимался, например тут: Получение информации из нестандартных контроллов. В крайнем случае, для определения того, что "ЧТО-ТО изменилось" можно использовать ф-ции "Pixel*()".

Отправлено: 06:15, 01-10-2009 | #3


Аватара для Frost_Imp

Пользователь


Сообщения: 53
Благодарности: 0

Профиль | Отправить PM | Цитировать


Sp01LeR, вот данные об окне
>>>> Window <<<<
Title: Д-Информ
Class: TFormMain
Position: 1, 1
Size: 1168, 1020
Style: 0x16CF0000
ExStyle: 0x00010100
Handle: 0x00050884

>>>> Control <<<<
Class: TStringGrid
Instance: 1
ClassnameNN: TStringGrid1
Advanced (Class): [CLASS:TStringGrid; INSTANCE:1]
ID: 264338
Text:
Position: 0, 38
Size: 1160, 948
ControlClick Coords: 1014, 371
Style: 0x54110000
ExStyle: 0x00000200
Handle: 0x00040892

>>>> Mouse <<<<
Position: 1014, 409
Cursor ID: 2
Color: 0xFFFFFF

>>>> StatusBar <<<<

>>>> Visible Text <<<<


>>>> Hidden Text <<<<

amel27, думал о PixelCheckSumm... Не подходит, сложно анализировать

Отправлено: 11:35, 01-10-2009 | #4


Аватара для Sp01LeR

Пользователь


Сообщения: 60
Благодарности: 13

Профиль | Отправить PM | Цитировать


PixelCheckSumm() очень грузит "камень", для Gui-форм лучше использовать PixelGetColor(), но тоже придется много анализировать...

Все-таки, по-моему, самым простым способом будет разворачивание окна, вычисление нужных коодинат в области Class: TStringGrid и использование Send(), MouseClick(), MouseWheel(), MouseGetPos(), MouseMove() и т.д.

Отправлено: 14:38, 01-10-2009 | #5


Аватара для Frost_Imp

Пользователь


Сообщения: 53
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Sp01LeR:
PixelCheckSumm() очень грузит "камень" »
Ну, у меня в нескольких приложениях есть чек сумм. Если поле анализа небольшое - потеря в скорости не заметна

Отправлено: 14:49, 01-10-2009 | #6


Аватара для r35p3ct

Новый участник


Сообщения: 13
Благодарности: 0

Профиль | Отправить PM | Цитировать


Frost_Imp, попробуй WinSpy, AutoIT v3 Info показывал TdfDBGrid, а WinSpy -TDBGridInplaceEdit.

Отправлено: 22:47, 06-10-2009 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Обработать класс TStringGrid

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
WINS/Browse - Отсутствуют серверы, которые могли бы обработать запрос на вход в сеть. 130586 Сетевые технологии 3 25-12-2008 12:04
[решено] Отсутствуют серверы способные обработать запрос на вход в сеть Jedi_Kni9ht Microsoft Windows NT/2000/2003 12 27-08-2008 00:54
массив $_GET как его обработать darksmoke Вебмастеру 11 29-03-2008 00:53
Как обработать событие на PHP fossil Вебмастеру 4 05-10-2005 20:16
Своя отрисовка TStringGrid Prisoner Программирование и базы данных 3 17-09-2003 05:16




 
Переход