![]() |
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 |
Re: Form als DesktopHintergrund
den Parent des Forms einfach auf das Desktopfenster setzen.
|
Re: Form als DesktopHintergrund
Der Desktop ist nicht mehr als ein normales Fenster
|
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)
|
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... |
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 ;)
|
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? |
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 :)
|
Re: Form als DesktopHintergrund
Für Desktop-Handle nutzt dir
![]() |
Re: Form als DesktopHintergrund
also, ich hab folgendes versucht:
Delphi-Quellcode:
und natürlich
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;
Delphi-Quellcode:
aber das funktioniert nicht?
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin Windows.SetParent(Desktop,TempDesktop); Windows.SetParent(ProgramManager,TempProgramManager); end; hab ich irgendwas vergessen? |
Re: Form als DesktopHintergrund
Zitat:
Zitat:
|
Re: Form als DesktopHintergrund
Zitat:
Aber mit dem Standard WinApi Windows Management hast du keine Chance, dein Fenster hinter die Icons zu kriegen. Das geht nur mit Active Desktop. Aber frag mich jetzt nicht, wie :mrgreen: |
Re: Form als DesktopHintergrund
Zitat:
|
Re: Form als DesktopHintergrund
Zitat:
also ich hab grad mal im active desktop geguckt, da kann ich nut bilder und html-seiten einbinden... kann ich einen film mit javascript oder so reinziehen? es ginge ja auch mit nem java-applet... :gruebel: :gruebel: |
Re: Form als DesktopHintergrund
Man kann doch auch ActiveX mit Delphi schreiben oder? Das dann auf eine html, und selbige auf den Desktop klatschen. Könnte ein Weg sein - gemacht habbichs auch noch nie...
|
Re: Form als DesktopHintergrund
Hi Leute!
Ich weis ja nicht in wie weit das hilft...und ich bin zur Zeit auch nicht Zuhause somit kann ich keine Code posten: Man macht eine Screen vom "Program Mangager" dann nochmal das ganze...nur das man zuerst die Icons ausblendet, dann hat man 2 Bilder. Diese subtrahiert man und alles, dass nicht schwarz ist sind die Icons... Danach kopierst du ein Bild deines Programmes auf den "Program Mangager" canvas...und dann noch die Icons drüber... soweit die Theorie(Bin da zur Zeit selbst dran, hab das Verfahren also noch nicht fertig) Einziger Nachteil: Sehr hohe Prozessorauslastung!! Mit Codeoptimierung sollte das aber in den Griff zu bekommen sein: Das Programm was du meinst ist bestimmt...komm grad nit darauf...ist aber mit den Matirx-Schriftzeichen...und das hat kaum Proz-Auslastung. DaDu (Keine Ahnung ob man das gebrauchen kann) |
Re: Form als DesktopHintergrund
hmm, nee, hatte nix mit matrix zu tun..
das waren so bunte kreise und so, die verschwommen muster gebildet haben... |
Re: Form als DesktopHintergrund
@Luckie: Eine ListView ist ein Fenster, ein FEnster hat ein Handle.. wieso sollte das nicht gehen?
[provocative]Dann wars bestimmt was anderes als der Desktop-Hintergrund :mrgreen:[/provocative] |
Re: Form als DesktopHintergrund
@glkeron: Natürlich kannste da ein Javascript, Javaapplet oder anderes reinfummeln. Halt alles, was du auch auf einer normalen Internetseite mit dem IE so anstellen kannst... Also wäre es auch möglich mit <object> oder <embed> (geht glaub ich beides, aber schau einfach mal nach...) ein Video oder so einzubinden. Musst dann nur noch die HTML-Setie als Hintergrund"bild" aus wählen und fertig!
mfg, mh166 |
Re: Form als DesktopHintergrund
Dann is aber immer dieses doofe Problem, dass die Dateinamen hinterlegt sind :-/ Das find ich immer total nervig. Kann man das nicht irgendwie verhindern?
|
Re: Form als DesktopHintergrund
wie geht das denn mit dem ActiveX?
das schnall ich nicht so ganz...kann da event mal einer ein beispiel machen? also einbinden in html und irgendwie paar ereignisse rein...buttonClick oder so... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:24 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