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

Хендл меню   Найти похожие ветки 

 
Khim ©   (2006-04-11 11:53) [0]

Доброе время суток!
Вопрос такой: как найти хендл плаваюего меню?
Getmenu здесь не подходит
Помогите кто может!
если можно помогите примерчиком
Заранее сенкс!


 
Leonid Troyanovsky ©   (2006-04-11 12:24) [1]


> Khim ©   (11.04.06 11:53)  

> Вопрос такой: как найти хендл плаваюего меню?


The window class name for a pop-up menu is "#32768".

--
Regards, LVT.


 
Khim ©   (2006-04-11 18:16) [2]

Нужно найти меню, например в Мелкософт Оффисе, или дельфи, а также его пункты,
В дельфи менюшка расположена на отдельной плавающей панельке

вот кусок кода
Var
Men      :HMenu;
Hnd,HndDialog,HndControl,HndAsc,HndBtn  :HWnd;
HndMen,HndSMen                          :HMenu;
idMen                             :integer;
begin
Hnd:=FindWindow("TAppBuilder", nil);
if Hnd <>0 then begin
 //фокусируем:
 windows.SetForegroundWindow(Hnd);   //или можно так:windows.BringWindowToTop(Hnd);
//Работа с меню:
//===============================================================================
 HndMen:=GetMenu(Hnd);//получили описатель главного меню окна.
 HndSMen:=GetSubMenu(HndMen,1);//получили описатель второго пункта главного меню (0 -первый пункт)
 //получили идентификатор 7 пункта подменюменю (черты в меню - это также пункты)
 idMen:=GetMenuItemID(HndSMen,6);
 //в данном случае idMen это word(33206)
 if idMen<>0 then begin              
//запускаем пункт меню. Именно PostMessage, SendMessage - не работает.
   PostMessage(Hnd,WM_COMMAND,idMen,0);


Idmen возвращает -1 Что не так? с блокнотом усё работает,


 
Leonid Troyanovsky ©   (2006-04-11 19:42) [3]


> Khim ©   (11.04.06 18:16) [2]

> Нужно найти меню, например в Мелкософт Оффисе, или дельфи,
>  а также его пункты,


Это ж кому такое извращение потребно?
С офисом работают через COM, для дельфи делают эксперты IDE и пр.

--
Regards, LVT.



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

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



Память: 0.45 MB
Время: 0.026 c
2-1145006273
elfebet
2006-04-14 13:17
2006.04.30
Как из строки program_#12345#.exe вырезать прочесть 123456


2-1144938720
Системщик
2006-04-13 18:32
2006.04.30
Десятичный логарифм


2-1145010184
_Iton_
2006-04-14 14:23
2006.04.30
TreeView


2-1144998437
nastyok::
2006-04-14 11:07
2006.04.30
Table1.FindKey


15-1144345143
Vendict
2006-04-06 21:39
2006.04.30
Win2kSp4->Win2kSp6




   Наверх