Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Можно ли достать текст из StringGrid'а зная его hWnd [D7]


alsov1 ©   (2004-11-26 18:21:00) 

Приветствую Мастера!

Из edit и ListBox - достать текст - без проблем

А можно ли достать текст из TStringGrid.

Если да - то как???

Заранее благодарен за любую помощь.


jack128   (2004-11-30 21:12:00) [1]

alsov1   (30.11.04 18:20) [15]
родителем являлся TStringGrid

Если знаешь в какой версии дельфи написана прога, то может и можно. Я уже тут на форуме высказывал эту идею. Нужно найти ControlAtom (это самое сложное), извлечь его значание для окна грида - это будет указатель на TStringGrid. Ну а дальше дело техники ;-)


alsov1   (2004-11-30 18:20:00) [2]

Приложение левое и компонент там самосделаный - TMyGrid, но есть предположение, что родителем являлся TStringGrid или TGrid


KSergey   (2004-11-29 09:38:00) [3]

> [10] dima_shapkin   (26.11.04 19:34)
> зная только handle нет,
> тебе срочно необходим адрес нужного экземпляра класса TStringGrid.

И, добавлю, быть уверенным, что речь идет именно о TStringGrid (т.е. приложении на Delphi)
К стати, приложение из которого хотим птырить - свое? Или вообще левое?


alsov1   (2004-11-29 09:24:00) [4]

Спасибо за помощь - понял что непосильная задача


dima_shapkin   (2004-11-26 19:40:00) [5]

Ха, ну естесвенно идиотская идея!!!!

В Paint, то юзаются внутрение поля и методы, много видать я уже выпил, домой пора....


dima_shapkin   (2004-11-26 19:37:00) [6]

Ха....
Идиотская идея....
Лезешь в Grids.pas находишь там отрисовку грида в процедуре Paint,
перехватываешь WM_PAINT того грида и повторяешь это все.
Handle есть, DC получишь, Font тоже.
Вот толька другой вопрос как перхватить WM_PAINT того окна(грида), ну думаю нет с этим не будет проблем...


dima_shapkin   (2004-11-26 19:34:00) [7]

зная только handle нет,
тебе срочно необходим адрес нужного экземпляра класса TStringGrid.


alsov1   (2004-11-26 19:28:00) [8]

от грида извесно только его hWnd - другой процесс - другое окно
то есть ничего у меня не получится?


dima_shapkin   (2004-11-26 19:23:00) [9]

если это ты пытаешься получить что-то из грида, который в другом адресном простанстве, то нет.


alsov1   (2004-11-26 19:18:00) [10]

может хоть направишь - в какую сторону копать?


dima_shapkin   (2004-11-26 19:12:00) [11]

А блин, так это уже другая песня......


alsov1   (2004-11-26 19:11:00) [12]

а к памяти объекта никак нельзя добраться?


dima_shapkin   (2004-11-26 18:56:00) [13]

какие сообщения
Грид - обычное окно, где в WM_PAINT отрисовываются ячейки
и отрисовывается текст. edit и ListBox это стандартные виндовые оконные классы, а грид это "самодельная сетка", где строки храняться в памяти объекта и просто отрисовываются....


alsov1   (2004-11-26 18:42:00) [14]

???


alsov1   (2004-11-26 18:38:00) [15]

Почему нет, что нельзя даже перехватывать сообщения к StringGrid


dima_shapkin   (2004-11-26 18:30:00) [16]

Нет конечно


Наверх

Титульная страница Поиск, карта сайта Написать письмо