Einzelnen Beitrag anzeigen

Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#4

AW: Semitransparente Fenster mittels (Update-)LayeredWindow

  Alt 29. Okt 2010, 14:18
Ich habe ein anderes Vorgehen als Du und bin daher bisher nicht auf dieses Problem gestossen.
Ich bastle gerade eine Komponentensuite für Transparente Anwendungen.
Microdemo unter:
www.bummisoft.de/download/Transtest.zip.

Wenn ich bei meinen GDI+-Malereien schaue was da gemalt wird sieht es so aus als ob z.B. Rot
bei scharzem Hintergurnd, den ich default verwende mit 128 bei Transparenz 128 gemalt wird:

im unteren Beispiel wird Caption auf 128 gesetzt.


wenn ich vorher mit weiß füllen würde bekäme ich 255 für Rot

Delphi-Quellcode:
var
  b:TGPSolidBrush;
  g:TGPGraphics;
  sc:PScanline;
begin
  image1.Canvas.Brush.Color := clBlack;
  image1.Canvas.FillRect(rect(0,0,200,200));
  g := GetGraphics(image1.Canvas);
  b := GetSolidBrush(clRed,128);
  g.FillEllipse(b,10,10,100,100);
  g.Free;
  b.Free;
  sc := Image1.Picture.Bitmap.ScanLine[50];
  Caption := IntToStr (sc[50].R);

end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)

Geändert von Bummi (29. Okt 2010 um 14:25 Uhr)
  Mit Zitat antworten Zitat