![]() |
Desktop Anzeigen
Hallo zusammen,
ich habe mal ne frage, weis zufällig jemand, wie ich die Funktion "Desktop Anzeigen" von der datei "Desktop anzeigen.scf" oder der WinXP Taskleiste, in meinem Programm realisieren kann? Danke schonmal... |
Re: Desktop Anzeigen
so glaub ich:
Delphi-Quellcode:
postmessage(HWND_BROADCAST, WM_SYSCOMMAND, WM_MINIMIZE, 0);
|
Re: Desktop Anzeigen
Eher so:
Delphi-Quellcode:
Aber Achtung: den Code nicht ausführen sonst gibt's ein Chaos!!
PostMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MINIMIZE, 0);
|
Re: Desktop Anzeigen
wozu gibts den code wenn er chaos macht? :gruebel:
|
Re: Desktop Anzeigen
Zitat:
|
Re: Desktop Anzeigen
nein hab ich nicht
|
Re: Desktop Anzeigen
Zitat:
Also z.B auch an einen Button, TreeView usw... |
Re: Desktop Anzeigen
Zitat:
bzw wieso postet ihr ihn |
Re: Desktop Anzeigen
Um den fehlerhaften Code von gekmihesg zu korrigieren, denke ich mal.
|
Re: Desktop Anzeigen
Hallo,
Zitat:
aber ich suchte eher was brauchbares... weis denn keiner wie man diese Funktion aus der "Desktop Anzeigen.scf" selbst basteln kann, inkl. der wiederherstellen funktion... |
Re: Desktop Anzeigen
|
Re: Desktop Anzeigen
Hallo,
Zitat:
das ganze soll genauso funktionieren, wie der link "Desktop Anzeigen.scf"... |
Re: Desktop Anzeigen
Wenn man sich mal die Datei Desktop anzeigen anschaut, kommt man auf folgendes:
[Shell] Command=2 IconFile=explorer.exe,3 [Taskbar] Command=ToggleDesktop Vielleicht kommst du damit weiter |
Re: Desktop Anzeigen
Hallo,
Zitat:
ich denke mal, das sich hinter ToggleDesktop ne Message verbirgt, die an die Taskbar gesendet wird, nur welche? :gruebel: |
Re: Desktop Anzeigen
Die Suche im PSDK ergibt folgendes: Das IShellDispatch4-Interface mit seiner Methode ToggleDesktop.
|
Re: Desktop Anzeigen
ich habs grad mal ausprobiert ;)
is saulustig! sollte man irgendwo einbaun um leute zu ärgern aber ich glaub ich muss jetzt erstmal meinen pc neu starten... oh mein sartmenü geht nimma :) |
Re: Desktop Anzeigen
Hallo,
Zitat:
|
Re: Desktop Anzeigen
Zitat:
|
Re: Desktop Anzeigen
Moin,
da anscheinend keiner eine Lösunug für das Problem hat, frage ich mal anders: kommt man eventuell an das Contextmenü der Taskbar ran, dann könnte ich ja eventuell den Menüpunkt "Desktop Anzeigen" / "Geöffnete Fenster anzeigen" von da aus nutzen. :gruebel: |
Re: Desktop Anzeigen
Dumdidum. :mrgreen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Keybd_event(VK_LWIN, 0, 0, 0); Keybd_event(Byte('M'), 0, 0, 0); Keybd_event(Byte('M'), 0, KEYEVENTF_KEYUP, 0); Keybd_event(VK_LWIN, 0, KEYEVENTF_KEYUP, 0); end; |
Re: Desktop Anzeigen
Moin,
Zitat:
Das war's zwar nicht wirklich, aber ich war mal ganz mutig :-D und hab statt Win+M einfach mal Win+D probiert, und siehe da, genau das wars, was ich suchte. Hätte ich auch schon eher drauf kommen können, mal paar Tastenkombinationen zu probieren... :wall: Was mich nun nur noch interessieren würde, ob's für das "Desktop Anzeigen" auch einen Api-aufruf gibt, aber das gehört ja nicht wirklich hier her... :dp: |
Re: Desktop Anzeigen
hi,
hab gerade noch etwas anderes gefunden um alle fenster zu minimieren
Delphi-Quellcode:
var
h: HWnd; begin h:=handle; while h > 0 do begin if isWindowVisible(h) then postmessage(h,WM_SYSCOMMAND,SC_MINIMIZE,0); h:=getnextwindow(h,GW_HWNDNEXT) end; |
Re: Desktop Anzeigen
ich weiss nicht obs euch noch hilft...
aber ich hab einen weg gefunden, die die form trotz "DEKTOP anzeigen"-klick immer angezeigt wird! Ich hab einfach einen Timer erstellt mit dem Intervall 50... der timer is enabled und bei "OnTimer" wird einfach: Form.FormStyle := fsStayOnTop; gesetzt! klappt bei mir wunderbar! :D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:13 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