AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...
Thema durchsuchen
Ansicht
Themen-Optionen

Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

Ein Thema von Z4ppy · begonnen am 15. Jan 2011 · letzter Beitrag vom 16. Jan 2011
Antwort Antwort
Seite 1 von 3  1 23      
Z4ppy

Registriert seit: 25. Apr 2008
269 Beiträge
 
Delphi 7 Enterprise
 
#1

Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 15. Jan 2011, 19:15
Ich möchte verhindern, dass meine Form minimiert werden kann.
Das Icon in der Taskleiste kann ich ausblenden und den Knopf oben rechts deaktivieren. Auch [Win]+[M] ist recht einfach abzufangen.

Bleibt noch die Tastenkombination [Win]+[D] und "Desktop anzeigen", die (so denke ich) intern das Gleiche machen.
Soweit ich weiss, wird dabei ja der Desktop in den Vordergrund geholt. Ich müsste es also hinkriegen, dass meine Form noch weiter vorn ist ^^
Wie geht das?

MfG Z4ppy

PS (insbesondere an Luckie ^^): Ich will die Einwände gar nicht hören
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 15. Jan 2011, 19:18
Hi,

viele Spiele sperren die Windows-Taste auf Wunsch.

http://www.swissdelphicenter.ch/de/showcode.php?id=1212
http://www.winfaq.de/faq_html/Conten...?h=tip0903.htm
  Mit Zitat antworten Zitat
Z4ppy

Registriert seit: 25. Apr 2008
269 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 15. Jan 2011, 19:40
Naja, das wär dann ein bisschen Holzhammer, denn auch so nützliche Kombinationen wie [Win]+[E] oder [Win]+[R] wären nicht mehr möglich, sollen es aber noch bleiben ^^
Auch soll das generelle Verhalten von [Win]+[D] nicht verändert werden, sondern nur meine Form da bleiben ^^

MfG Z4ppy
  Mit Zitat antworten Zitat
Z4ppy

Registriert seit: 25. Apr 2008
269 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 01:50
Ok, das Minimieren hab ich jetzt hingekriegt:
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE or SWP_NOOWNERZORDER or SWP_NOACTIVATE);

Nun ist es aber so, dass Win 7 ja das schöne Feature hat, dass man mit der Maus auf den Button ganz unten rechts gehen kann und dann wird der Blick auf den Desktop frei.
Logischerweise sollte da mein Fenster angezeigt werden, wird es aber nicht

Ausserdem möchte ich das Fenster nicht topmost haben... Es soll halt immer aufm Desktop sein, aber nicht vor allen anderen Fenstern
Ich müsste also obigen Code ausführen, wenn Win+D oder der Button unten rechts (Win 7) bzw. die Verknüpfung "Desktop anzeigen" (XP, Vista?) gedrückt wird.
Ersteres wäre über einen Tastatur-Hook möglich, das andere wird wohl schwieriger

Irgendwelche Ideen?

MfG Z4ppy

Geändert von Z4ppy (16. Jan 2011 um 01:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 07:41
Bearbeite in dem von Muhkuh ersten geposteten Link die Funktion "MsgFilterFunc" nach deinen Bedürfnissen!
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 09:02
Vielleicht erklärst du mal, was das soll, dass der Benutzer nicht mehr an seinen Desktop drankommen soll. Mir erschließt sich der Sinn nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#7

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 09:23
PS (insbesondere an Luckie ^^): Ich will die Einwände gar nicht hören
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 09:28
Der Themenersteller bat speziell dich Michael, das nicht zu hinterfragen. Solange nicht offensichtlich Schadsoftware o.ä. entwickelt wird, finde ich so eine Bitte auch in Ordnung. Die Diskussion verläuft sich sonst komplett (sieht man ja nun) und bis eine Lösung da ist zieht sich das hin.
Hier weiß fast jeder, dass es meistens nicht gut ist, das Standardverhalten von Win zu ändern, aber Win macht das z.T. selbst.

Guck z.B. die Win7-Desktop-Gadgets an (oder wie man die nennt). Da gibt's eine analoge Uhr, CPU- und RAM-Anzeige und vieles mehr. Das verhält sich genau so, wie es hier gewünscht ist. Bei Win+D minimiert sich alles, aber die Gadgets bleiben im Vordergrund, auch über den Desktop-Icons. Beim Fahren mit der Maus über das Feld unten rechts ist es genauso.
Es gibt da sicher bessere Wege, die von Win7 offiziell unterstützt werden, aber wenn es auch unter XP & Co. laufen soll, muss man es manuell machen.

Geändert von Matze (16. Jan 2011 um 09:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 09:42
Das Post scriptum habe ich übersehen. Aber warum sagt er zum Beispiel nicht, dass er so ein Gadget programmieren will, dass auch unter XP läuft? Und wenn es harmlos ist, könnte er es ja sagen. Also ich verstehe die Heimlichtuerei nicht. Würde bestimmt auch die Hilfsbreitschaft fördern, wenn man weiß um was es geht. Aber meinte wegen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#10

AW: Minimieren bei [Win]+[D] bzw. "Desktop anzeigen" verhindern...

  Alt 16. Jan 2011, 11:09
Eigentlich ist es doch ersichtlich, was er haben möchte:

Das Fenster soll quasi als Bestandteil des Desktops angezeigt werden.
Wenn man also den Desktop anzeigen lässt, dann muss auch das Fenster noch sichtbar sein (alle anderen weg)

Es gibt da eine Möglichkeit, das Fenster auf Desktopebene zu platzieren (statt HWND_TOPMOST HWND_DESKTOP ??? )

Dann liegt das (meine ich) sogar unter den Symbolen auf dem Desktop
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz