![]() |
OSD / Fenster über ein anderen (FullScreen)Programm legen
Moin,
ich hab leider absolut keine Ahnung, wonach ich suchen soll, bzw. in welches Forum das hier gehört. Daher beschrieb ich einfach mal, was ic meine und wäre glücklich, wenn ihr mir entweder sagt, wie man sowas allgemeingültig nennt (also womit ich suchen kann) oder bestenfalls halt nen Link zur Lösung gebt ;) Was ich gerne haben würde ist, dass sich mein Programm (oder zumindest eine Form davon) in den Vordergrund drängt, ohne dass ein bisher im FullSCreen-Mode laufendes programm dadurch minimiert wird. ich möchte halt ährend dieses FullSCreen-Programm (ein Spiel) ausgeführt wird auf die GUI meines Programs zugreifen können - hoffe, das war verständlich :) Danke schonmal für eure Hilfe! |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Suchst du so was:
![]() |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Jain, also ich denke mal, dass dieser Befehl ledglich das Fenster nach Vorne ruft.
Nun ist es aber bei den meisten FullSCreenAnwendungen (wie spielen) so, dass sie sich automatisch minimieren, wenn sie ihren Focus verlieren. Sie laufen ja meist in einer anderen Auflösung. Mir geht es nun darum, irgendwie dem Spiel den Fokus nicht zu nehmen, aber trotzdem meine Form, die ganz vorn zu sehen ist bedienen zu können. Oder müsste man sich da direkt in die Grafik des Spiels hacken? |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Nein tut er nicht. Probier es doch erstmal aus, bevor du hier antwortest.
|
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Zitat:
Mit dieser Funktion wird es nicht klappen und meinswissen nach geht das garnicht. Eine Lösung wäre das Spiel im Window Modus zu spielen. Von da aus kann man zwischen Programmen wechseln, ohne dass das Spiel minimiert wird. Grüße, paresy |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Naja ... ich hatte mir nen Timer gebastelt, der sich in 5 sekunden selbst aktiiert und olgenden code startet:
SetWindowPos(Handle,HWND_TOPMOST,left,top,width,he ight,SWP_SHOWWINDOW); (Evtl. ist ja der falsche parameter schlechtgewählt?) Dann bin ich in des FullScreen-Spiel gewechselt ... und hatte nach 5 Sekunden auch kurz die Form zu Gesicht bekommen, danach aber nurnoch den Windows Mauszeiger. P.S.: Sicher ist WIndowed-Mode ne Alternative, aber gerade das möchte ich ja umgehen. |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
du könntest versuchen das Handle von dem Spiel-Fenster zu bekommen und deine Anwendung darauf zu plazieren (Parent setzen). Aber ich vermute dass, das Spiel deine Anwendung dann übermalt.
|
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Zitat:
Kann man die Spiele vieleicht dazu zwingen im Windowmode zu laufen, auch wenn sie es von sich aus nicht unterstützen? vielleicht nen Loader vorschalten oder so? Bye |
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Das Spiel, um was es mir geht (Fussball Manager) läuft ohne Probleme im Windowed-Modus ... aber cih fänds halt richtig schön, wenn man im FullSCreen spielt und dann so ein eingeblendetes Menü bekäme ;)
|
Re: OSD / Fenster über ein anderen (FullScreen)Programm lege
Es ist ein grundsätzliches Problem...
Denn um deine Form 'bedienen' zu können, muss sie den Eingabefokus bekommen. Wenn das Spiel sich aber bei Verlust des Fokus minimiert, dann kann man da nicht viel machen. Vielleicht kannst Du es 'austricksen', indem Du dein Fenster zum Child des Hauptfensters des Spiels machst (aber da eine Mischung aus DirectX-Fullscreen und GUI-Fenstern ohnehin meist Probleme macht, wird das wohl auch nicht helfen). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 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