![]() |
Bildschirmhintergrund auf separaten Desktops
Bis Windows 7 verwende ich folgenden Einzeiler, um das Hintergrundbild nach einem erfolgreichen CreateDesktop/SetThreadDesktop/SwitchDesktop zu ändern:
Delphi-Quellcode:
Ab Windows 8 ist das Hintergrundbild des alternativen Desktops leider schlicht blau, stattdessen wird das Hintergrundbild des nicht mehr angezeigten Desktops geändert.
function SetDesktopWallpaper(AFilename: string): boolean;
begin Result := SystemParametersInfoW(SPI_SETDESKWALLPAPER, 0, Pointer(PWideChar(WideString(AFilename))), SPIF_SENDCHANGE); end; Und auch -1 zum Zurücksetzen scheint nicht mehr zu klappen, der temporäre Schirm bleibt bestehen:
Delphi-Quellcode:
Darus resultierend nun meine Frage: welche Alternativen Möglichkeiten, das Bildschirmhintergrundbild (temporär) zu verändern (bzw. das eines neues Desktops erstmalig zu setzen) gibt es noch?
function RevertDesktopWallpaper: boolean;
begin Result := SystemParametersInfoW(SPI_SETDESKWALLPAPER, 0, PWideChar(-1), SPIF_SENDCHANGE); end; |
AW: Bildschirmhintergrund auf separaten Desktops
Ich pushe das nochmal vorsichtig nach oben, da ich das jetzt auch von einem Windows 7-Nutzer gehört habe.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:46 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 by Thomas Breitkreuz