Einzelnen Beitrag anzeigen

Green

Registriert seit: 11. Jun 2006
156 Beiträge
 
#1

Transparentes Bild nicht überall Transparent...

  Alt 11. Jan 2008, 21:52
Ich habe ein TImage auf dem man per drag and drop einen Rahmen ziehen können soll.
Da das darunterliegende Image nicht übermalt werden soll habe ich bei dem oberen transparent auf true gesetzt,
vor dem zeichnen des Rahmens (also in MouseDown) den brushstyle auf clear gesetzt.
Gezeichnet wird so:
Delphi-Quellcode:
procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image2.canvas.brush.style :=bsClear;
  if shift = [ssleft] then
    begin
      x1 := x; y1 := y;
      x2 := x; y2 := y;
      Image2.canvas.rectangle (x1,y1,x2,y2);
    end;
end;

procedure TForm1.Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if shift = [ssleft] then begin
    Image2.canvas.rectangle (x1,y1,x2,y2);
    y2 := round(y1 + (AufloesungY/AufloesungX) * (x-x1));
    x2 := x;
    Image2.canvas.rectangle (x1,y1,x2,y2);
  end
end;
Bei manchen PCs funktioniert das, man sieht also das darunterliegende bild und auf dem Neuen nur das Grause, bei manchen allerdings sieht man auf dem oberen NUR weiss?
kann mir jemand sagen warum?

lG Green
  Mit Zitat antworten Zitat