Вниз
Скачать: CL | DM;

TreeView в чужом приложении   Найти похожие ветки 

← →
DelphiNew   (2004-07-08 13:31) [0]

Уважаемые мастера помогите с таким вопросом: в дочернем окне чужого приложения есть компонент TreeView мне нужно зная название элемента в этом компоненте выделить его. Как можно это сделать, какая информация мне для этого понадобится, есть ли компонеты для работы с чужими приложениями из своего.
P.S Приложение написано на Delphi


← →
YuRock ©   (2004-07-08 20:05) [1]

Для этого есть много функций

Чтобы выделить: SetFocus;

Чтобы найти: FindWindowEx, GetWindow, EnumChildWindows...


← →
DelphiNew   (2004-07-09 08:39) [2]

Ладно как найти окно понятно, а как найти этот компонент и выделить в нём определённый элемент, ведь SetFocus передаёт просто фокус компоненту


← →
bar   (2004-07-09 11:09) [3]

По имени окна и его классу (класс TTreeView в делфи). Правда имена часто пустыми бывают толко классы. Узнать конкретные имена можно например с помощью Spy++ (Highlight). Зная имя ищешь с помощью
EnumChildWindows,FindWindowEx

Компонентов для работы с чужими приложениями встречал но не то что дебе нуно. "Работа" - слово большое убить чужое приложение тоже "работа".
Для выделения определенного элемента требуется Handle окна TreeView и идентификатор элемента .  
Зная это можно использовать функции
TreeView_... из модуля CommCtrl

Смотри как это сделано в ComCtrls.
Например выделение элемента зная его ItemId

var
 Item: TTVItem;
begin
   with Item do
   begin
     mask := TVIF_STATE;
     hItem := ItemId;
     stateMask := TVIS_EXPANDED;
   end;
   TreeView_SetItem(Handle, Item);
end;

Как узнать ItemId? Это ВОПРОС.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.028 c
14-1091310306
Delphi5.01
2004-08-01 01:45
2004.08.22
Delphi na Pocket PC


4-1089358067
putrsa
2004-07-09 11:27
2004.08.22
работа с визуальными компонентами чужого приложения


1-1091781776
Jiuraasdasd
2004-08-06 12:42
2004.08.22
Как предотвратить мерцание окон в MDI приложении?


14-1091791513
Юрий Зотов
2004-08-06 15:25
2004.08.22
Переустановка Red Hat "по месту" - это возможно?


1-1091978497
NOX
2004-08-08 19:21
2004.08.22
string -> single :0(




   Наверх