AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

JPG als Desktop-Wallpaper?

Ein Thema von Dannyboy · begonnen am 16. Jul 2004 · letzter Beitrag vom 27. Jul 2004
Antwort Antwort
Seite 1 von 2  1 2      
Dannyboy

Registriert seit: 4. Aug 2003
Ort: Delphi-Heaven
418 Beiträge
 
Delphi 7 Personal
 
#1

JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:05
Hey yo fellaz,
ich weiss, wir hatten dieses Thema schon 100000000 Mal. Ich würde gern den Desktop-Hintergrund
programmtechnisch ändern, wobei die Methode auch JPGs annehmen können soll. SystemParametersinfo
funktioniert nur mit BMPs. Ich könnte natürlich jedes JPG im Programm zu einem Bitmap konvertieren
und dann die Methode aufrufen, aber gibt es nicht einen praktischeren Weg

Thanx a lot, boyz.

DANNYOBOY
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:08
Das hängt von der Windows-Version ab. Imho können nur XP und 2003 JPGs als einfache Hintergrundbilder anzeigen, auf älteren Systemen muss der grausame Active Desktop dafür aktiviert werden

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#3

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:10
Ich meine das funktioniert so:
Delphi-Quellcode:
function ChangeWallpaper_AD(aFile: String): Boolean;
const
  CLSID_ActiveDesktop: TGUID = '{75048700-EF1F-11D0-9888-006097DEACF9}';
var
  hObj: IUnknown;
  ADesktop: IActiveDesktop;
  str: string;
  wstr: PWideChar;
begin
  hObj := CreateComObject(CLSID_ActiveDesktop);
  ADesktop := hObj as IActiveDesktop;
  wstr := AllocMem(MAX_PATH);
  try
    StringToWideChar(aFile, wstr, MAX_PATH);
    ADesktop.SetWallpaper(wstr, 0);
    ADesktop.ApplyChanges(AD_APPLY_ALL or AD_APPLY_FORCE);
  finally
    FreeMem(wstr);
  end;
end;
Nur bin ich mir gerade nicht sicher, ob das JPEG's unterstützt, glaube aber schon.
Alexander
  Mit Zitat antworten Zitat
Dannyboy

Registriert seit: 4. Aug 2003
Ort: Delphi-Heaven
418 Beiträge
 
Delphi 7 Personal
 
#4

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:15
Yo,
ich habe XP Prof drauf.
@Alexander:
Geht das nicht ohne ActiveDesktop
  Mit Zitat antworten Zitat
Benutzerbild von gothic_mike
gothic_mike

Registriert seit: 2. Okt 2003
Ort: Olbernhau
134 Beiträge
 
Delphi 7 Personal
 
#5

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:28
Zitat von Dannyboy:
Yo,
ich habe XP Prof drauf.
@Alexander:
Geht das nicht ohne ActiveDesktop
Also, die meisten Tools (IrfanView, ACDView...), die das Hintergrundbild änder, konvertieren die JPG's, PNG's etc. erst in ein Bitmap, meist im Windows-Ordner, befor sie es alls Wallpaper setzen...
Wird imho kein Weg dran vorbei führen.

Zwecks Konvertierung von Bildern kannst dir ja mal die ImageFileLib von dieser Seite angucken: http://logicnet.dk/lib ...
bye4now, gothic_mike
. ..: carpe noctem :: coding in the darkness :.. .
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#6

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:47
Ich weiß jetzt nicht in wie fern, das mit JPEG's klappt, aber ich meine nicht:
Delphi-Quellcode:
function ChangeWallpaper(aFile: String): Boolean;
begin
  SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, Pointer(afile),
    SPIF_SENDWININICHANGE);
end;
Aber was hast du gegen den Active Desktop, ich habe ihn bei XP einfach angelassen... Sonst muss du wirklich das Bild als platzverschwendenes BMP konvertieren...
Alexander
  Mit Zitat antworten Zitat
Thorben86

Registriert seit: 20. Nov 2003
Ort: Brühl
365 Beiträge
 
Delphi 2005 Personal
 
#7

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:52
Der Active Desctop schmiert aber ab und zu ab, das is ziemlich beschissen.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#8

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 10:58
Ist mir noch nicht passiert
Alexander
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#9

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 11:00
mir isser auch schon abgekackt ^^
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: JPG als Desktop-Wallpaper?

  Alt 16. Jul 2004, 11:07
@supermuckl:

Überdenke bitte Deine Wortwahl. In letzter Zeit widerspricht diese immer öfters den Regeln des angenehmen Umgangs mit- und untereinander.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 15:16 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