Показать сообщение отдельно
  #14  
Старый 27.08.2012, 17:50
Dmitry_DM Dmitry_DM вне форума
Активный
 
Регистрация: 07.08.2012
Сообщения: 258
Версия Delphi: Delphi 7
Репутация: 11
По умолчанию

Цитата:
Сообщение от poli-smen
Используй для этого компонент TPaintBox.
Чего-то оно не рисуется...
Код:
procedure TForm1.Button_WAVgraphClick(Sender: TObject);
var
  WavInfo: TWavInfo;
  KX, KY: Extended;
  i, X, Y, DY, Chanel: Integer;
begin
  with PaintBox1, canvas do
begin
  KX := 1; // Коэффициент пропорциональности по абсциссе
  KY := 0.01; // Коэффициент пропорциональности по ординате
  DY := Height div 2; // Смещение по ординате
  Chanel := 0; // Номер рисуемого канала
  Repaint;

  for i := Low(WavInfo.Samples) to High(WavInfo.Samples) do
  begin
    X := Trunc(KX * i);
    Y := Trunc(KY * Smallint(WavInfo.Samples[i, Chanel]) + DY);

    PaintBox1.Canvas.MoveTo(X, DY);
    PaintBox1.Canvas.LineTo(X, Y);
  end;
end;
end;
Ответить с цитированием