Einzelnen Beitrag anzeigen

Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#19

Re: Laufschrift an Panelgröße anpassen

  Alt 28. Sep 2006, 15:25
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var buffer: TBitmap;
begin
  buffer := TBitmap.Create;
  buffer.width := paintbox.width;
  buffer.height := paintbox.height;
  Dec(x1, StepWidth);
  Dec(x2, StepWidth);
  buffer.Canvas.TextOut(x1, 0, sLaufSchrift);
  buffer.Canvas.TextOut(x2, 0, sLaufSchrift);
  if x1 < 0 then x2 := PaintBox.Width + x1;
  if x2 < 0 then x1 := PaintBox.Width + x2;
  bitblt(paintbox.canvas.handle,0,0,paintbox.width,paintbox.height,buffer.canvas.handle,0,0,srccopy);
  buffer.free;
end;
die hintergrundfarbe lässt sich ja mit FillRect und brush.color einstellen.

Wäre etwas besser als die Methode mit dem Leerzeichen am Ende. Außerdem würd ich mir überlegen, eine Klasse oder einen record für dier Laufschrift anzulegen.

So in der Art:
Delphi-Quellcode:
TLaufschrift = record
  x1,x2: integer;
  stepwidth: integer;
  sLaufschrift: string:
end;

[...]

var
Laufschrift: Tlaufschrift;
etc...
  Mit Zitat antworten Zitat