Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.09;
Скачать: CL | DM;

Вниз

Окна хендлы и эдиты   Найти похожие ветки 

 
ULTRIX ©   (2002-10-26 01:26) [0]

У меня такой серьёзный вопрос. С помощью своей программы я открываю другую программу, в которой есть несколько tedit-ов, комбобокс и пару буттонов. Нахожу это окно, получаю хендл, а прочесть инфу в едитах никак не могу - управлению поддаётся только заголовок окна. Так что вот сам собственно вопрос, как сделать то, чего я не умею (пока ;)))


 
Cobalt ©   (2002-10-26 02:22) [1]

Ошибка в 17-й строке


 
SPeller ©   (2002-10-26 03:10) [2]

Используй WM_GETTEXT и ещё какое-то, котрое заголовок возвращает.


 
ULTRIX ©   (2002-10-26 11:01) [3]

procedure TForm1.Button2Click(Sender: TObject);
var TheWindowHandle : THandle;
TextToSet: PChar;
begin TheWindowHandle := FindWindow(0, Мастак Дельфи");
BringWindowToTop(TheWindowHandle);
texttoset:="Мастак Дельфи.ру";
SendMessage(TheWindowHandle, WM_setTEXT, 10, integer(texttoset));
end;


Вот часть из исходника программы...


 
SPeller ©   (2002-10-26 12:36) [4]

А проверять хендл на верность пробовал? Может, FindWindow тебе ноль возвращает?


 
ULTRIX ©   (2002-10-28 00:27) [5]

Смысл в том, что этой частью исходника могу только изменить заголовок окна, например, "мастак дельфи", но никак не прочитать в этом окне содержание tedit-ов...


 
Alex4444444444   (2002-10-28 01:35) [6]

Tak nado, navernoe, Handles editov naiti? Ya uzh tochno ne pomnyu, chtoto tipa FindChildWin...? ili EnumChildWin...?


 
ULTRIX ©   (2002-10-28 11:32) [7]

Придётся попробовать ;)


 
Song ©   (2002-10-28 11:43) [8]

2SPeller © (26.10.02 12:36)
FindWindow() не может вернуть дискриптор контрола, только верхнего окна.


 
SPeller ©   (2002-10-28 11:47) [9]


> Song © (28.10.02 11:43)

ОК, приму к сведению). Но ведь в примере кода речь шла об окне верхнего уровня.


 
ULTRIX ©   (2002-10-28 21:16) [10]

To Song - тогда что может вернуть?


 
Ihor Osov'yak ©   (2002-10-28 22:08) [11]

to ULTRIX © (28.10.02 21:16)

Пройдись по дочерним окошкам. Есть такие волшебные слова как

GetWindow(хендл_верхнего_окна,GW_CHILD) для перехода к первому вложеному окошку и
GetWindow(хендл,GW_HWNDNEXT) для перехода к сдедующену окошку на том же уровне...
Также посмотри на GetDlgItem ...

Зы - а еще погоняй winsign или spy++ - много чего понятнее станет ...




Страницы: 1 вся ветка

Текущий архив: 2002.12.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
4-28341
Danger
2002-10-28 01:11
2002.12.09
ShellExecute


3-27842
Сергей Б.
2002-11-20 12:21
2002.12.09
Обновление набора данных в DBGrid -- требуется помощь


1-27931
roman002
2002-11-29 04:44
2002.12.09
kylix


1-27995
ec
2002-11-29 15:00
2002.12.09
TDrawGrid


14-28286
Premium
2002-11-15 20:56
2002.12.09
Я слабый......