Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá...Teria como eu saber que o Menu Principal está aberto? Que o usuário está passeado no Menu?Valeu...
Valeu Márcio! http://forum.imasters.com.br/public/style_emoticons/default/worshippy.gif
Mas, e para saber se o PopupMenu está aberto? Tentei aqui e não consegui :(
Com esta dica lá do ForumWeb consegui o que eu queria. http://www.swissdelphicenter.ch/torry/showcode.php?id=958
Valeu ;)
...if popup1.showing then...
Isso não é válido em algumas versões do delphi...
Pois é, mas o problema é que eu queria saber se qualquer popup do sistema estivesse aberto. Mas como ia ser um overhead muito grande, acabei fazendo por outro caminho. Valeu pela ajuda ;)
for i:=0 to Application.ComponentCount-1 do if (Application.Components[i] as tpopup).showing then showmessage ('Existe um popup aberto');
Com isso você deve saber se existe algum popup aberto dentro do seu sistema...
Valeu ae http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
beleza... http://forum.imasters.com.br/public/style_emoticons/default/natal_w00t.gif
Você pode fazer algo do tipo:
Declare:
procedure WMMenuSelect(var Msg: TWMMenuSelect); message WM_MENUSELECT;
Fonte:
procedure TForm1.WMMenuSelect(var Msg: TWMMenuSelect);var menuItem: TMenuItem; hSubMenu: HMENU;beginmenuItem:=nil;if (Msg.MenuFlag <> $FFFF) or (Msg.IDItem <> 0) then begin if Msg.MenuFlag and MF_POPUP = MF_POPUP then begin hSubMenu:=GetSubMenu(Msg.Menu, Msg.IDItem); menuItem:=Self.Menu.FindItem(hSubMenu, fkHandle); end else menuItem:=Self.Menu.FindItem(Msg.IDItem, fkCommand); end;if menuItem <> nil then Label1.Caption:=menuItem.Caption;end;
No caso ele vai mostrar em uma label o caption do menu que o mouse esta passando, sendo assim poderia fazer o que quiser com o menuItem retornado....