Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Hintergrundbild ändern (https://www.delphipraxis.net/10786-hintergrundbild-aendern.html)

MathiasSimmack 28. Okt 2003 16:36

Re: Hintergrundbild ändern
 
Mach dir nix draus. Bin ja selbst nicht fehler-resistent. Die Prozedur "ChangeWallpaper" (die aus meinem Programm, meine ich!) sollte besser so aussehen:
Delphi-Quellcode:
procedure ChangeWallpaper(const szFilename: string);
var
  oleres    : HRESULT;
  actdesk   : IActiveDesktop;
  compopt   : TComponentsOpt;
  dwReserved : dword;
begin
  actdesk := CreateComObject(CLSID_ActiveDesktop,oleres) as IActiveDesktop;
  if(oleres = S_OK) then begin
    ZeroMemory(@compopt,sizeof(compopt));
    compopt.dwSize := sizeof(compopt);
    dwReserved    := 0;
    actdesk.GetDesktopItemOptions(compopt,dwReserved);

    // Active Desktop ist aktiv
    if(compopt.fActiveDesktop) then begin
      actdesk.SetWallpaper(pwidechar(widestring(szFilename)),0);
      actdesk.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);

      exit;
    end
  end;

  // im Fehlerfall, bzw. ohne Active Desktop
  SystemParametersInfo(SPI_SETDESKWALLPAPER,0,pointer(szFilename),
    SPIF_SENDWININICHANGE);
end;
;)

XeRo 28. Okt 2003 16:55

Re: Hintergrundbild ändern
 
Um das HintergrunBild auch unter "Eigenschaften von Anzeige"\"Hintergrund" anzeigen zu lassen, könnte man auch folgenden Code verwenden. Allerdings weiß ich nicht, wo und wie er funktioniert...(ist nicht von MIR).

Delphi-Quellcode:
Uses Registry;

procedure SetWallpaper(sWallPaperBMPPath: string; bTile: Boolean);
var
  reg: TRegIniFile;
begin
  reg := TRegIniFile.Create('Control Panel\Desktop');
  try
    with reg do
    begin
      WriteString('', 'Wallpaper', sWallPaperBMPPath);
      WriteString('', 'TileWallpaper', IntToStr(Ord(bTile)));
    end;
  finally
    reg.Free;
  end;
  SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);
end;

Alexander Roth 13. Sep 2004 14:30

Re: Hintergrundbild ändern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hab mal schnell ein Programm geschrieben zur leichten Eingabe von Ordnern, musst wenn du willst nur den namen der Datei ändern. (ist aber wohl überflüssig.)
Ach ja und @MathiasSimmack leider unterstütz dein Programm keine Unterordner. Und es unterstützt kein JPG. Habs ausprobiert.

XeRo 14. Sep 2004 21:07

Re: Hintergrundbild ändern
 
Ok...danke nochmal...

Ich bin jetzt etwas überrascht, weil ich das programm schon total verdrängt hatte...
aber dennoch danke! :thumb:

kowa 20. Jan 2006 17:16

Re: Hintergrundbild ändern
 
kann man des auch so machen, dass das Programm alle 5 Minuten das Hintergrundblid ändert?

XeRo 20. Jan 2006 18:31

Re: Hintergrundbild ändern
 
ja du kannst ja einfach einen timer benutzen...oder du schreibst selbst eine zeitabfrage... :gruebel:
oder hast du damit probleme? wenn ja nur sagen...aber bitte in nen neuen thread...

jokerfacehro 23. Jul 2006 18:27

Re: Hintergrundbild ändern
 
Zitat:

Zitat von SirThornberry
wird der ganze Desktop dann wieder neu gemalt oder bekommst du das irgendwie hinn ohne das der Desktop kurz flackert?? Worauf ich hinaus will. Kann man das ganze auch so machen das man aller paar zehntelsekunden das bild wechselt ohne das, das klicken auf symboloe unmöglich wird (webcamp als desktophintergrundbild)

um eine webcam als hintergrund einzustellen, empfehle ich einfach active desktop mit
einer html seite die das bild anzeigt

peace


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:06 Uhr.
Seite 3 von 3     123   

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