Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Обновление tChart. анимация tChart


Автор: artmaestro 4.9.2013, 23:13
Здравствуйте

Делаю программку, с некого устройства через COM-порт я получаю цифры. Задача такая чтобы в TChart выводился график на основе полученных цифр с COM порта. 

Цифры я получил, но не могу организовать "живой" chart. Т.е. должна быть анимация построения графика. Подскажите пожалуйста как это реализовать или может посоветуйте другой компонент

Привожу код
Код

procedure TForm1.Button1Click(Sender: TObject);
begin
ComPort1.Port:= ComComboBox1.Items[ComComboBox1.ItemIndex];
if ComPort1.Connected then ComPort1.Close  //если порт открыт, закрываем его, а иначе открываем
  else ComPort1.Open;

end;

procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var
  Str: String;
begin

  //здесь идет получение данных с компорта  ComPort1.ReadStr(Str, Count) и добавление в Series
  Series1.Add(ComPort1.ReadStr(Str, Count),'',clRed);

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 EnumComPorts(ComComboBox1.Items);  //Добавление существующих COM-портов в элемент ComboBox1

  if ComComboBox1.ItemIndex > -1 then
    ComPort1.Port := ComComboBox1.Items[ComComboBox1.ItemIndex];
end;



Заранее спасибо!

Автор: artmaestro 4.9.2013, 23:49
Решил проблему

Код

procedure TForm1.ComPort1RxBuf(Sender: TObject; const Buffer; Count: Integer);
var
  Str: String;
begin
  Series1.AddY(ComPort1.ReadStr(Str, Count),'',clRed);
  Chart1.Repaint;
end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)