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

Вниз

как найти на форме другого приложения Toolbar или toolbutton   Найти похожие ветки 

 
graY ©   (2004-02-02 18:25) [0]

ghb gjvjob FindWindowEx(Form1.Handle,0,"TToolBar","ToolBar") не ищется как и FindWindoц("TToolBar","ToolBar")


 
Rouse_ ©   (2004-02-02 18:42) [1]

> FindWindowEx(Form1.Handle,0,"TToolBar","ToolBar")
Так ты ищешь на своей форме, замени Form1.Handle на нужный...


 
graY ©   (2004-02-03 07:34) [2]

в том то и фишка что не ищет скоко не пытался


 
Rouse_ ©   (2004-02-03 08:58) [3]

В качестве примера:
Создал тестовое приложение, Caption у формы сделал ToolBar_Test_Form

После этого создаю другое приложение, в нем пишу следующий код:
procedure TForm1.Button1Click(Sender: TObject);
var
 H: HWND;
begin
 H := FindWindow(nil, "ToolBar_Test_Form");
 if H <> 0 then
   Caption := IntToStr(FindWindowEx(H, 0, "TToolBar", nil));
end;


В результате в заголовке увидим Хэндл тулбара из перого приложения.

Желаю успехов.

ЗЫ: Внимательно прочитай хэлп по этим функциям, там все предельно ясно описано...


 
Marlyn   (2004-02-04 14:15) [4]

тебе же gray русским язаком обьяснил что тип ТTOOLBAR не ищется ясен пень что форму хоть Button назови от этого она TButton не станет.


 
GrayFace ©   (2004-02-04 14:34) [5]

Станет. И большинство компонент станет. graY, попробуй nil вместо "ToolBar", как посоветовал Rouse_.


 
Rouse_ ©   (2004-02-05 11:41) [6]

> [4] Marlyn   (04.02.04 14:15)
Ты хоть сам понял что сказал?
Для начала посмотри хелп и глянь какие параметры нужно менять для поиска по названию класса, а какие для поиск по названию окна...

После этого сделай как я написал и проверь...

HWND FindWindow(

   LPCTSTR lpClassName, // pointer to class name
   LPCTSTR lpWindowName  // pointer to window name
  );

HWND FindWindowEx(

   HWND hwndParent, // handle to parent window
   HWND hwndChildAfter, // handle to a child window
   LPCTSTR lpszClass, // pointer to class name
   LPCTSTR lpszWindow // pointer to window name
  );

Так вот TButton - это название класса, а Button1 - это название окна...
Прочуствуй разницу, и не делай как не нужно...


 
Rouse_ ©   (2004-02-05 11:45) [7]

procedure TForm1.Button1Click(Sender: TObject);
var
H: HWND;
begin
H := FindWindow(nil, "ToolBar_Test_Form"); // Ищем окно с именем "ToolBar_Test_Form"
if H <> 0 then
  Caption := IntToStr(FindWindowEx(H, 0, "TToolBar", nil)); // Ищем окно с именем класса TToolBar
end;


Также последнюю строку можно изменить на:
Caption := IntToStr(FindWindowEx(H, 0, nil, "ToolBar1"));
Для поиска по названию окна


 
ppcat   (2004-02-05 12:20) [8]

graY, Качни маленький проект-заготовку, разберешься.
http://www.ppcat.hotbox.ru/myprgs/AlienWindows.zip


 
graY ©   (2004-02-06 06:12) [9]

Удалено модератором
Примечание: Веди себя вежливо


 
r9000   (2004-02-06 13:24) [10]

Да чего-то непонятно? Функция FindWindowEx(H,0,"TToolBar","ToolBar") для ToolBar не работает, а для Button хорошо отрабатывает.Функция FindWindowEx(H, 0, "TToolBar", nil)) конечно работет, но что делать если несколько ToolBar-ов, как с ними работать(даже функция FindWindowEx(H, 0, nil, "ToolBar1") не работает )? Что делать? Пример >ppcat тоже на это не отвечает?


 
pegu   (2004-02-06 15:25) [11]

EnumChildWindows тебе поможет


 
лелика   (2004-02-19 15:18) [12]

а не проще ли если это твоя форма
with Form1 do begin
 for I := 0 to ComponentCount -1 do begin
   if Components[I] is TToolBar then
     TToolBar(Components[I]).xz


 
akvilon ©   (2004-02-20 23:22) [13]

Когда толбаров много можно отбирать по количеству кнопочек на них

типа так:
i := SendMessage(hTToolBar, TB_BUTTONCOUNT, ...)



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

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

Наверх




Память: 0.5 MB
Время: 0.038 c
6-1077907167
ALeX.B.
2004-02-27 21:39
2004.04.25
Помогите! Нужен рабочий FTPServer!


3-1080713031
dik
2004-03-31 10:03
2004.04.25
Разноцветный D B G R I D


6-1077296851
Сергей Чурсин
2004-02-20 20:07
2004.04.25
Как убрать Netbeui,не убирая имена компов, шаринги в Netw. ?


1-1081334577
}|{yk
2004-04-07 14:42
2004.04.25
Об интернационализации


7-1078403652
mike_g
2004-03-04 15:34
2004.04.25
Работа с com портами