Hallo,
ich habe eine Hauptanwendung (Haupt), die kurz nach dem Starten eine zweite Anwendung (Neben) startet. Diese wird nur als Tray-Icon angezeigt, wenn sie per Parameter aufgerufen wird, damit der Anwender nicht verwirrt ist. Erst beim Klick auf einen Button in "Haupt" soll sie angezeigt und Edit-Felder per SendMessage (vor-) ausgefüllt werden.
Beide Anwendungen sind Eigenentwicklungen (Delphi 2007 und XE7).
Leider funktioniert es nicht wie gewünscht: zum einen funktioniert das Minimieren nicht. Und die Anwendung "Neben" wird zwar angezeigt, allerdings ohne das darin enthaltene Panel sowie dessen Unter-Controls. Wenn ich Neben einmal per Doppelklick aus dem Tray hervorhole sind alle Controls vorhanden. Danach werden sie auch immer wieder angezeigt.
Im Create-Teil wird sie mit
Application.ShowMainForm := False;
unsichtbar gesetzt.
Beim minimieren rufe ich
if Message.CmdType and $FFF0 = SC_MINIMIZE then Hide;
auf. Alleine funktioniert dies auch problemlos.
Hier ist mein Code in Haupt zum Anzeigen von Neben:
Delphi-Quellcode:
// entweder
SendMessage(wndMyHandle, WM_SYSCOMMAND, SC_RESTORE, 0);
// oder
ShowWindow(wndMyHandle, SW_NORMAL);
In beiden Fällen das gleiche fehlerhafte Ergebnis.
Mit den einzelnen Code-Teilen kann ich andere Anwendungen wie TotalCommander oder Notepad problemlos anzeigen und minimieren.
Was muss ich anders machen?