AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Form1 in den Vordergrund bringen

Ein Thema von value is NULL · begonnen am 11. Mai 2012 · letzter Beitrag vom 11. Mai 2012
Antwort Antwort
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#1

Form1 in den Vordergrund bringen

  Alt 11. Mai 2012, 08:37
Hi Leute,

Ich hab echt schon viel gegoogelt aber irgendwie komme ich nicht auf den Fehler.
Ich habe eine Formularanwendung welche sich beim minimieren ins Tray legt. Das mache ich so:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMinimize := AppMinimize;
  ShowWindow(Application.Handle, SW_HIDE);
  ShowWindow(Form1.Handle, SW_HIDE);
  form1.Hide;
end;
Mit einem Rechtsklick auf das Tray bekomme ich ein Popup in welchem ich einen Menüpunkt mit Show habe:

Delphi-Quellcode:
  ShowWindow(Application.Handle, SW_RESTORE);
  ShowWindow(Form1.Handle, SW_RESTORE);
  form1.Show;
Mit einem Doppelklick will ich das Form auch wieder anzeigen sprich in den Vordergrund bringen. Das mache ich genauso wie bei dem Rechtsklick
auf das Tray.

Mein Problem ist, das es mit dem Rechtsklick funktioniert, mit dem Doppeklick aber nicht. Er öffnet zeigt mir zwar das Form an, wenn jedoch zB Excel
gestartet ist und dieses vor dem Doppeklick fokusiert wird, ist meim Form IMMER im Hintergrund, nur nicht mit dem Rechtsklick.

Was habe ich hier falsch?

hier der Code von meinem Doppelklick:

Delphi-Quellcode:
procedure TForm1.trayDblClick(Sender: TObject);
begin
  ShowWindow(Application.Handle, SW_RESTORE);
  ShowWindow(Form1.Handle, SW_RESTORE);
  form1.Show;
end;
Habe es auch schon mit der Funktion ForceForegroundWindow(hwnd: THandle): Boolean; versucht. Da funktionierts genau 2 mal und dann lässt es sich nicht mehr minimieren :/

LG und Danke schon mal
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
40.504 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Form1 in den Vordergrund bringen

  Alt 11. Mai 2012, 10:16
Zitat:
Form1 in den Vordergrund bringen
Delphi-Referenz durchsuchenBringToFront?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#3

AW: Form1 in den Vordergrund bringen

  Alt 11. Mai 2012, 12:18
Epic Fail!

Danke
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
40.504 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Form1 in den Vordergrund bringen

  Alt 11. Mai 2012, 12:26
Ach ja, der Grund könnte darin liegen, daß über dieses Popupmenü dein Programm einmal den Eingabefokus bekommt oder schon hat und beim Doppelklick der Fokus bei der Traybar landet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf