AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bild direkt auf Desktop ausgeben
Thema durchsuchen
Ansicht
Themen-Optionen

Bild direkt auf Desktop ausgeben

Ein Thema von Meflin · begonnen am 26. Dez 2005 · letzter Beitrag vom 27. Dez 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#1

Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 13:33
Aloha!

Ich habe ein GIF Bild (wahlweise PNG), also mit Transparenz, das ich gerne einfach auf den Desktop ausgeben würde. Nur, wie ihr euch denken könnt, ich habe keinen Plan wie man sowas eigentlich anstellt

Deswegen hoffe ich jetzt einfach mal auf eure Mithilfe

  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#2

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 13:48
Moin Meflin,

was verstehst du denn unter ausgeben ? Das Bild als Hintergrundbild auf den Desktop legen ? Dann wäre vielleicht das hier etwas für dich.

Schöne Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#3

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 13:58
Nein, das meine ich nicht.


Das Bild stellt einen Cursor dar. Wenn man einen Hotkey meines Programmes betätigt, soll dieses Cursorbild an der Stelle auf dem Desktop einfach hingemalt werden, an der der echte Cursor sich gerade befindet. Egal was da ist, und zwar oben drüber, nciht als Hintergrund.

  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 14:05
du kannst das ganze auf ein TBitmap assignen und dann auf die DesktopDC zeischnen.
Delphi-Quellcode:
var LDC: HDC;
begin
  LDC := GetDC(0);
  BitBlt(LDC, XPos, YPos, DeinBitmap.Width, DeinBitmap.Height, DeinBitmap.Canvas.Handle, 0, 0, SRCCOPY);
  ReleaseDC(0, LDC);
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#5

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 14:42
Ok, das funktioniert prinzipiell, nur nicht mit Transparenz. Mein TPNGImage kennt kein Canvas.Handle und TBitmap unterstützt wiederum keine PNGs oder GIFs. Was liese sich da machen?

  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 16:36
ich kenne TPNGImage nicht. Prinzipiell muss es da aber ein Byte pro Pixel für den Alphakanal geben. Und das musst du beim ausgeben mit einbeziehen. Wie gibst du das TPNGImage sonst aus so das der Alphakanal beibehalten wird?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#7

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 17:49
Zitat von SirThornberry:
ich kenne TPNGImage nicht. Prinzipiell muss es da aber ein Byte pro Pixel für den Alphakanal geben. Und das musst du beim ausgeben mit einbeziehen.
Schon. Aber wie überhaupt ausgeben?

  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 22:59
Welches TPNGImage verwendest du? Also woher hast du es? Dann könnte man wenigstens selbst mal schauen was es da so für methoden gibt wenn man weiß welches du verwendest.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#9

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 23:11
Voila http://pngdelphi.sourceforge.net/

  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Bild direkt auf Desktop ausgeben

  Alt 26. Dez 2005, 23:59
so sollte es funktionieren:
Delphi-Quellcode:
    LDC: TCanvas;
begin
  LDC := TCanvas.Create;
  LDC.Handle := GetDC(0);
  LDC.Draw(0, 0, LImage);
  ReleaseDC(0, LDC.Handle);
  LDC.Handle := 0;
  LDC.Free;
LImage ist bei mir ein TPNGObject welches von TGraphic abgeleitet ist. Es sollte also mit allen Object funktionieren die von TGraphic abgeleitet sind (also auch TBitmap, TJPEGImage etc.)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  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 17:35 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