Показать сообщение отдельно
  #2  
Старый 16.12.2008, 18:24
Ama Ama вне форума
Активный
 
Регистрация: 15.07.2008
Сообщения: 260
Репутация: 23
По умолчанию

Цитата:
Сообщение от maddamo4ka
Как с помощью таймера одна линия пододвигалась к другой? подскажите как сделать так, что бы линии которые показывают как двигается линия были белыми. И как нарисовать линию, которая соединяла бы концы двух линий. И как сделать так чтобы с помощью кнопки BitBtn очищалось поле для рисования? Заранее спасибо

Я думаю что-бы с помощью таймера линия двигалась нужно использовать написанную тобой проседуру меняя цвет предыдущей линии на белый. Что-бы заменить цвет на белый добавь в проседуру DrawShape добавь параметр Colot: TColor и меняй его на белый. Примерно так:
Код:
procedure DrawShape(TopLeft, BottomRight:TPoint;AMode:TPenMode; AColor: TColor);
 var OldColor: TColor;
begin
  with Form1.Image1.Canvas do 
    begin
      OldColor:= Pen.Color;
      Pen.Color:= AColor;
      Pen.Mode :=AMode;
      MoveTo(TopLeft.X, TopLeft.Y);
      LineTo(BottomRight.X,BottomRight.Y);
      PenColor:= OldColor;
    end;
end;
А чтобы очистить канву просто используй проседуру
Image1.Canvas.Rectangle(0, 0, Image1.Width, Image1.Height)
но перед вызовом запиши строчку: Image1.Canvas.Brush.Style:= bsClear;
Ответить с цитированием