Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit TNA-Popupmenü... (https://www.delphipraxis.net/15392-problem-mit-tna-popupmenue.html)

FriFra 27. Jan 2004 19:27


Problem mit TNA-Popupmenü...
 
Ich habe in meinem Programm ein Popup-Menü, welches beim Rechtsklick auf das TNA-Icon geöffnet wird. Es gibt aber ein grosses Problem....
In meinem Programm verrichtet u.a. auch ein TWebBrowser seinen Dienst und wenn eben dieser mal wieder eine Seite lädt, wird das PopUp-Menü ausgeblendet :wall: ...
Wenn ich allerdings das SetForegroundWindow weglasse habe ich natürlich ein anderes Problem, wenn der User bei offnenem Menü irgendwo anders hinklickt... was kann man da tun?
An besten wäre sicher, wenn es eine Möglichkeit gäbe den TWebBrowser "einfrieren" zu lassen und nach schliessen des Menüs an genau der Stelle, wo er angehalten wurde weiter machen zu lassen.

Delphi-Quellcode:
procedure TForm1.WndProc(var Msg: TMessage);
var
  rCursor: TPoint;
begin
  if Msg.Msg = WM_USER + 20 then
  begin
    case Msg.lParam of
      WM_RBUTTONDOWN:
        begin
          { aktuelle Cursoposition holen }
          GetCursorPos(rCursor);

          { Popupmenü verschwindet wenn ein Klick außerhalb des Popupmenüs erfolgt }
          SetForegroundWindow(Self.Handle);

          { Das Popupmenü erscheint an der gewünschten Position in dem TNA }
          PopupMenu1.Popup(rCursor.x, rCursor.y);
        end;
      WM_LBUTTONDBLCLK:
        begin
          Visible := True;
          Application.Restore;
        end;
    end;
  end;
  inherited;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz