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

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

Меню чужого приложения [D7, Win2k]


Vad ©   (2006-04-10 08:23:00) 

Как сделать Enable/Disable пунктов меню и субменю
у чужого приложения ?

По идее...
Находим нужное окно
wnd :=  FindWindow(nil,Pchar('Блокнот'));
Находим меню
hMHandle:=GetMenu(wnd);
Находим подменю
hSMHandle:=GetSubMenu(hMHandle,1);

как дальше?


Leonid Troyanovsky   (2006-04-10 10:03:00) [1]


> Vad ©   (10.04.06 09:11) [2]

> EnableMenuItem(hSMHandle,u1,MF_ENABLED);


MF_BYCOMMAND or MF_ENABLED

Вообще-то, положено анализировать возвращаемое функциями.

--
Regards, LVT.


Vad   (2006-04-10 09:11:00) [2]

var
 wnd:HWND;
 hMHandle,hSMHandle:hMENU;
 u1:UINT;
begin
wnd :=  FindWindow(nil,Pchar(ListBox1.Items.Strings[ListBox1.ItemIndex]));
hMHandle:=GetMenu(wnd);
hSMHandle:=GetSubMenu(hMHandle,strtoint(Edit1.text));
u1:=GetMenuItemId(hMHandle,strtoint(Edit2.text));
EnableMenuItem(hSMHandle,u1,MF_ENABLED);

В чем может быть косяк?


begin...end   (2006-04-10 08:31:00) [3]

EnableMenuItem


Наверх

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