Einzelnen Beitrag anzeigen

Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#1

[TPaintBox] - "Hintergrundfarbe" für Pen.Style :=

  Alt 6. Jan 2007, 23:26
Ich erzeuge eine Linie (also eigentlich 4 ) auf einer TPaintBox, worauf ich zuvor ein BitMap kopiert hab. So sieht die "Paint"-Routine aus:
Delphi-Quellcode:
procedure TfrmMain.pbMapPaint(Sender: TObject);
begin
  BitBlt(pbMap.Canvas.Handle, xDis, yDis, bMap.Width, bMap.Height, bMap.Canvas.Handle, 0, 0, SrcCopy);
  if (selectRect.X >= 0) and (selectRect.Y >= 0) then begin
     pbMap.Canvas.MoveTo((selectRect.X * 32) + xDis, (selectRect.Y * 32) + yDis);
    pbMap.Canvas.LineTo(((selectRect.X + 1) * 32) + xDis, (selectRect.Y * 32) + yDis);
    pbMap.Canvas.LineTo(((selectRect.X + 1) * 32) + xDis, ((selectRect.Y + 1) * 32) + yDis);
    pbMap.Canvas.LineTo((selectRect.X * 32) + xDis, ((selectRect.Y + 1) * 32) + yDis);
    pbMap.Canvas.LineTo((selectRect.X * 32) + xDis, (selectRect.Y * 32) + yDis);
  end;
end;
Zuvor ist natürlich der Style des Pens auf "psDot" gesetzt. Dummerweise zeichnet er aber die Zwischenräume mit der .Color-Eigenschaft der TpaintBox. Kann ich irgendwie sagen, dass das Durchsichtig sein soll?
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat