Ich möchte verhindern, dass jemand auf die Desktop-Icons klickt. Das soll grafisch auch gerne noch durch ein Abdunkeln deutlich gemacht werden.
Das tue ich:
Ich nehme eine Form mit folgenden Eigenschaften:
- BorderStyle = bsNone
- WindowState = wsMaximized
- AlphaBlend = True, AlphaBlendValue = 123
Zusätzlich überschreibe ich die
CreateParams
-Methode und stelle ein:
Delphi-Quellcode:
Params.WndParent := GetDesktopWindow;
Params.Style := WS_CHILD;
Bislang hat es auf dem Entwicklungsrechner (Win7/64) auch bestens geklappt: Der Desktop wird abgedunkelt und ich kann nicht mehr drauf klicken.
Auf Windows XP ist der Abdunkel-Effekt aber über allen Fenstern drüber, anstatt dahinter! Im Anhang sieht man es, hier habe ich die Form extra mal nicht auf wsMaximized gestellt.
Was läuft hier falsch? Ich habe (recht ziellos) mit verschiedenen Parametern für
Params.Style
und
Params.ExStyle
herumgespielt, aber ohne Erfolg. Was kann ich tun?