Всем привет, в этом уроке я хочу показать вам как сделать бегущую строку на canvas.В превыдущем уроке я показал вам как сделат такую же строку из TLabel? а сегодня научимся делать строку на Paintbox-e. Начнём: Кинем на форму Ttimer и PaintBox из закладки "system". И теперь нажимаем 2 раза по PaintBox1 и прописываем: Code
const
s = 'Delphi-Proger.ucoz.ru быстроразвивающийся сайт!';
...
procedure TForm1.PaintBox1Paint(Sender: TObject); begin paintbox1.Canvas.Brush.Color := clgray; paintbox1.Canvas.Font.Color := clblack;
paintbox1.Canvas.Font.Name := 'system'; paintbox1.Canvas.TextOut(-1*paintbox1.tag,0,s); end; Готово, теперь клацаем по таймеру и пишем: Code procedure TForm1.Timer1Timer(Sender: TObject); begin paintbox1.tag:=paintbox1.tag+1; if paintbox1.tag =paintbox1.canvas.textwidth(s) then paintbox1.tag := -1*paintbox1.width; paintbox1.Canvas.TextOut(-1*paintbox1.tag,0,s); end; Вот и всё что нужно для создания эфекта бегущей строки на PaintBox-e. Всего хорошого.
|