Entwickler-Ecke
Windows API - Frage zur windowmode
Kuyatzu - So 16.09.07 12:44
Titel: Frage zur windowmode
Hi
ich wollte ein launcher für ein paar games schreiben und hab dabei ein paar fragen hoffe ihr könnt sie mir beantworten
ich habe hir ein Beispiel mit CS 1.6 und wollte das in fenstermode spielen hab leider keine Ahnung wie ich das mache ohne das Fehler auftauchen.
So ich habe das Ganze nochmal verändern und ergänzt es klappt aber immer noch nicht.
(sollte ich es doch mal mit SetWindowPos versuchen? Wenn ja was brauche ich und was nicht?)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TForm1.Button1Click(Sender: TObject); begin ShellExecute(0, 'open','D:\Spiele\Counter Strike\Valve\hl.exe', nil, nil, SW_SHOW); hWindow := FindWindow(nil,'Half-Life'); ShowWindow(SW_SHOWMAXIMIZED,0); if hWindow <> 0 then MoveWindow(hWindow, 0, 0 , 800, 600, True) else ShowMessage('Progamm wurde nicht gefunden');
end |
Regan - So 16.09.07 13:49
In deinem Fall würde ich eher mal die Parameter anders übergeben. Ich glaube da gibt es einen für Fenster Modus :gruebel: .
Kuyatzu - So 16.09.07 14:35
wenn es einen Parameter für fenster modus gibt denn brauch ich den
wenn einer weiß wie der lautet denn sagt mir bitte wie
danke
Kuyatzu - So 16.09.07 15:11
eigentlich ist das nicht wonach ich suche wollte eigentlich sowas für ff7 machen da das sonne kleine
auflösung hat aber dafür gibt es sowas nicht
also muss ich das mit nem program über delphi machen aber das will nicht wie ich das will
BenBE - So 16.09.07 15:14
Hast Du schon mal was von Interpunktion und Großbuchstaben gehört? Deine Tastatur besitzt sowas nämlich und macht deinen Text sofort um einiges verständlicher :mahn:
Kuyatzu - So 16.09.07 16:10
wow das hilft mir jetzt echt
gibt es denn wenigsten ein beispiel für die verwendung von
MoveWindow
BenBE - So 16.09.07 16:14
Ja.
P.S.: Wenn im nächsten Post von Dir die Interpunktion fehlt, darfst Du selber die Lösung finden. Etwas eigenständige Arbeit wäre nicht ganz schlecht. ;-)
Kuyatzu - So 16.09.07 16:42
Na gut,
gibt es ein Weg ein Programm das schon an ist via Procedure wieder zu aktivieren(also in dem Vordergrund bringen).
Da ich das Programm minimiert habe.
BenBE - So 16.09.07 16:57
Für dein eigenes Programm kannst Du Application.BringToFront; nutzen.
Für ein Fremdes Programm musst Du das Fenster mit Hilfe von FindWindow suchen und dann mit ShowWindow und SW_RESTORE, SW_MAXIMIZE oder SW_SHOW wieder anzeigen.
Ferner kann es nötig sein, mit SetWindowPos den Z-Index des Fensters zu verändern, um dieses in den Vordergrund zu bringen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!