![]() |
SetParent Probleme
Hallo
Ich setze eine FormX per Windows.SetParent() auf meine MainForm. Nun habe ich folgende leidige Probleme: 1) Hints werden in der FormX nur dann angezeigt, wenn die FormMain den Focus hat. 2) Die FormX habe den Focus und die MainForm wird minimiert. Wenn nun der Taskbar Button anklickt wird, wird die FormMain nicht angezeigt. Erst wenn man ca. 3 Mal darauf geklickt hat. 3) Die Application erscheint nicht mehr in der "Alt+Tab" Liste. Kennt jeman Workaround dafuer? (insbesondere fuer Punkt 1) Danke! |
Re: SetParent Probleme
ich glaub für sowas ist das MDI gedacht.
|
Re: SetParent Probleme
Liste der Anhänge anzeigen (Anzahl: 1)
MDI geht in meinem Fall glaub nicht, da es so aussehen sollte wie im angehaengten Screenshot.
Insbesondere das Mainmenu sollte dort erscheinen wo es ist und nicht ganz oben. |
Re: SetParent Probleme
fuer Problem 2) habe ich folgende Loesung herausgefunden:
Delphi-Quellcode:
Bleiben also nur noch 1 + 3
procedure TForm3.WMNCACTIVATE(var Msg: TWMNCACTIVATE);
begin if Msg.Active and IsIconic(MainForm.Handle) then SetForegroundWindow(MainForm.Handle); inherited; end; |
Re: SetParent Probleme
Hast du schon einmal über den Einsatz von Frames nachgedacht?
Gruß Hawkeye |
Re: SetParent Probleme
Ist es denn mit TFrames moeglich, das Mainmenu - wie im Screenshot abgebildet - zu haben?
|
Re: SetParent Probleme
Liste der Anhänge anzeigen (Anzahl: 1)
Hai toms,
ich hoffe das ich das richtig verstanden habe. Du möchtest eine FormX fest in deine Mainform einbinden? Um das Menü an der richtigen Stelle, nämlich auf der FormX, zu haben solltest Du einfach eine Toolbar auf diese Form legen und bei deren Property Menue das MainMenü der Form eintragen. Ich mache das ganze in dem Beispiel nicht mit SetParent. Ich sage schon beim erzeugen der FormX aus der Mainform heraus das ihr Parent ein Panel der Mainform ist. Du kannst dir das ja mal ansehen. Eventuell ist es etwas für dich. |
Re: SetParent Probleme
Hallo Skarky
Danke fuer deine Beispiel. War gestern um 3 Uhr auch noch darauf gekommen, es so zu machen. Habe jedoch dafuer die TMenuBar Komponente genommen, bei welcher man einer TToolBar auch ein TMainMenu yuweisen kann. Folgerung: 1) SetParent nicht verwenden, sondern nur Komp.Parent := OtherKompo; und 2) "eine Toolbar auf diese Form legen und bei deren Property Menue das MainMenü der Form eintragen" |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz