![]() |
Über alles Zeichnen
Hallo, kann ich in delphi irgendwie auf den Desktop malen das es von nichtz verdeckt wird, also immer im vordergrund? Egal ob anwendung, spiel oder was weiß ich!
[edit=SirThornberry]Schreibfehler im Titel korrigiert - Mfg, SirThornberry[/edit] |
Re: Über alles Zeichen
Ja, aber es ist nicht einfach.
Du kannst auf den Desktop zeichnen, indem du dir ein Canvas erzeugst und sein Handle auf GetDesktopWindow() setzt, aber wenn du z.B. ein 3D-Spiel spielst, wird es nicht angezeigt werden. Falls du auf Fraps hinaus willst: Fraps arbeitet mit DLL-Injection, um in 3D-Spielen zeichnen zu können. |
Re: Über alles Zeichen
ich bin mir nicht sicher, ob die genannte variante das war: das malt überall drüber, aber sonald sich was darüber verändertist es wieder weg.
das "verändern" kann so ziemlich alles sein, nen fenster was bewegt oder neu drüber kommt, wenn irgend ein symbol in der startleiste aktualisiert wird oder was weiß ich. ist ja die frage, wie lange das bleiben soll, nur in spielen und so wird ja meistens in extrem kurzen abständen alles neu aufgebaut. |
Re: Über alles Zeichen
Dann muss er halt auf das Neuzeichnen reagieren und selbst auch neuzeichnen. Aber das eigentliche Problem ist ja, dass man mit dieser Methode nicht über ein 3D-Spiel zeichnen kann.
|
Re: Über alles Zeichen
Mir gehts ja mehr über "Alle Malen" , das mitn Desktop is ja kein prob, aber richtig über alles ging in VB irgendwie besser, habe ich vor 2 Jahren mal gemacht, aber jetzt so viel Delphi gemacht das ich gerade nur noch weiss wieman VB Startet.
|
Re: Über alles Zeichen
Was du in VB kannst, kannst du auch in Delphi. Wie hast du das denn in VB gemacht?
|
Re: Über alles Zeichen
Klar, ein Formular ohne Rahmen und Titelleiste, dass so gross ist wie der Desktop.
Delphi-Quellcode:
Und schon hast du die gesamte Fläche zum Zeichen. (über self.Canvas zugreifen)
procedure MakeFullScreenForm(form : TForm);
begin Assert(Assigned(form)); Form.BorderStyle := bsNone; Form.FormStyle := fsStayOnTop; Form.SetBounds(0, 0, Screen.Width, Screen.Height); end; |
Re: Über alles Zeichen
Aber nicht über 3D-Spiele...
|
Re: Über alles Zeichen
Außerdem hat man dann das Problem, dass der Desktop ja nicht durchscheint. Da ist es einfach, gleich auf das Handle des Desktops zu zeichnen.
|
Re: Über alles Zeichnen
habe mal nen Crosshair gemacht, wo man größe und so einstellen konnte, das konnte ich schoen in Egoshootern verwenden, zB UT, war ganz praktisch.
Is aber wie gesagt 2 Jahre her, und den Quelltext habe ich net gesichert, evtl liegt er ja noch auf dem PC wo ich mien Fachinf. lehre angefangen habe.. mal meinen ausbilder fragen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:14 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