Показать сообщение отдельно
  #14  
Старый 10.01.2010, 16:53
Asinkrit Asinkrit вне форума
Местный
 
Регистрация: 29.10.2009
Сообщения: 446
Репутация: 271
По умолчанию

Ну вот, набросал побыстрому,
создай проект, кинь на форму TPaintBox, у которого в событии OnPaint, пропиши PaintBox1Paint, и смотри на результат...
Код:
function Fact(N : Integer) : Integer;
var
  I:integer;
begin
  Result := 1;
  If N >= 1 Then
    For I := 2 To N Do
      Result := Result * I;
end;

procedure TForm1.PaintBox1Paint(Sender: TObject);
var
  x, x0, y0, scale:integer;
begin
  with PaintBox1.Canvas do
    begin
    scale:=8;                      //размер построенного графика
    Pen.Color:=clBlack;
    x0:=(PaintBox1.Width div 2);  //определим центр графика
    y0:=(PaintBox1.Height div 2);
    MoveTo(x0,10);LineTo(x0,PaintBox1.Height-10); //отрисуем оси X,Y
    MoveTo(10,y0);LineTo(PaintBox1.Width-10,y0);
    Pen.Color:=clGreen;
    MoveTo(x0,y0);
    for x:=1 to 4 do              //ну и отрисуем график..
      LineTo(x0+(x*scale), y0-(Fact(x)*scale));
    end;
end;
Ответить с цитированием