Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Form als DesktopHintergrund (https://www.delphipraxis.net/38263-form-als-desktophintergrund.html)

glkgereon 16. Jan 2005 21:22


Form als DesktopHintergrund
 
hi

kann ich eine Form als DesktopHintergrund benutzen?

also kann ich ein Formular hinter der Taskbar und hinter icons und so anordnen?

Achso:
es würde auch reichen wenn ich irgendwie ein Bitmap/Canvas oder so hätte, das ich dann immer aufn desktop male

SirThornberry 16. Jan 2005 22:03

Re: Form als DesktopHintergrund
 
den Parent des Forms einfach auf das Desktopfenster setzen.

moritz 16. Jan 2005 22:10

Re: Form als DesktopHintergrund
 
Der Desktop ist nicht mehr als ein normales Fenster

SirThornberry 16. Jan 2005 22:12

Re: Form als DesktopHintergrund
 
hinter die icons wird schwer bis unmöglich. Was eventuell gänge wäre wenn du den parent deines forms auf das desktopfenster setzt, und die listview mit den symbolen dann auf dein formular. allerdings überdecken diese dann wieder einen teil von deinem formular, bzw. alles weil das ja so groß ist wie der geammte bildschirm (also das listview mit den symbolen)

glkgereon 17. Jan 2005 16:32

Re: Form als DesktopHintergrund
 
hmm, weil ich hab da son prog gefunden was animierte desktophintergründe anzeigt...

und das wollte ich mal mit ein paar unauffälligeren motiven versuchen...

Dax 17. Jan 2005 16:38

Re: Form als DesktopHintergrund
 
Versuch' mal, den "Program Manager" (heisst echt so, ist der Icons-Teil des Desktops) in dein Formular zu binden (mit SetParent()) und dann dein Formular als Child des Desktops setzen.. Weiss nicht genau ob's geht, bin zu faul zum testen ;)

glkgereon 17. Jan 2005 16:48

Re: Form als DesktopHintergrund
 
hmm, hört sich halbwegs logisch an :gruebel: :gruebel:

wie krieg ich denn das handle vom Program Manager und den vom Desktop raus?

dizzy 17. Jan 2005 17:15

Re: Form als DesktopHintergrund
 
Das Handle vom Desktop ist imho immer 0. (Oder war's der DC der immer 0 ist? Mal testen...) Das andere weiss ich net :)

Dax 17. Jan 2005 17:18

Re: Form als DesktopHintergrund
 
Für Desktop-Handle nutzt dir MSDN-Library durchsuchenGetDesktopWindow, für den ProgMan könntest du auf FindWindow(nil, 'Program Manager') ausweichen.. Noch besser wärs, wenn du auch noch den Klassennamen hättest ;)

glkgereon 17. Jan 2005 17:54

Re: Form als DesktopHintergrund
 
also, ich hab folgendes versucht:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Desktop:=GetDesktopWindow;
  ProgramManager:=FindWindow(nil, 'Program Manager');
  TempDesktop:=Windows.GetParent(Desktop);
  TempProgramManager:=Windows.GetParent(ProgramManager);
  Windows.SetParent(Application.Handle,Desktop);
  Windows.SetParent(ProgramManager,Application.Handle);
end;
und natürlich
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Windows.SetParent(Desktop,TempDesktop);
  Windows.SetParent(ProgramManager,TempProgramManager);
end;
aber das funktioniert nicht?

hab ich irgendwas vergessen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr.
Seite 1 von 3  1 23      

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