Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.09.2013, 18:13   #1
Admin2
Пользователь
 
Регистрация: 13.10.2008
Сообщений: 40
По умолчанию TChart прокрутка.

Вывожу данные в "Line" или "Fast Line" следующим образом:
Код:
today := Time;
form1.Series1.AddXY(today,OborPerSecond,FormatDateTime('m:s', today),clBlack);
Здесь по оси Х должно отображаться текущее время, а по Y - значение OborPerSecond. Не получается автоматически прокручивать график вдоль оси Х. Перелистывание страниц при нажатии кнопки работает, прокрутка правой кнопкой мыши работает, а автоматическая - нет. Пробовал способы (пока при нажатии на кнопку):
Код:
Chart1.BottomAxis.Scroll( 10, true );
и
Код:
With Chart1.BottomAxis do SetMinMax(Minimum+1,Maximum+1);
1.Основной вопрос: что я делаю не так?

2.В чем отличие между графиками "Line" или "Fast Line"?
3.Верно я делаю, что определяю текущее время через today := Time? 4.Может в TChart это уже предусмотрено?
5.Почему при выводе следующией точки на график линии вертикальной сетки скачут?
6. Почему после перемещения графика мышкой перестает работать:
Код:
 Chart1.MaxPointsPerPage:=TrackBar4.Position;
7. В зависимости от частоты построения точек на графике меняется шаг по оси Х (время). Мне бы хотелось зафиксировать шаг не зависимо от того, прошла одна секунда времени или например, пять. Как это сделать?
Admin2 вне форума Ответить с цитированием
Старый 23.09.2013, 19:51   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вот как я двигал график:
Код:
Series1.Addy(random(500));
if Series1.Count>5 then begin
 Chart1.BottomAxis.AutomaticMinimum:=false;
 Chart1.BottomAxis.Minimum:=Chart1.BottomAxis.Minimum+1;
end;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.09.2013, 20:14   #3
Admin2
Пользователь
 
Регистрация: 13.10.2008
Сообщений: 40
По умолчанию

Не выходит. Оказывается у меня свойство:
Код:
Chart1.BottomAxis.Minimum
вначале =0, а потом все время равно константе: 0,804685138888889. Оно не меняется при построении графика. После перезагрузки программы это число будет другим.

Цитата:
Сообщение от Stilet Посмотреть сообщение
Вот как я двигал график:
Код:
Series1.Addy(random(500));
if Series1.Count>5 then begin
 Chart1.BottomAxis.AutomaticMinimum:=false;
 Chart1.BottomAxis.Minimum:=Chart1.BottomAxis.Minimum+1;
end;
Мне бы то же самое, но со временем в секундах и минутах по оси Х

Последний раз редактировалось Stilet; 23.09.2013 в 22:49.
Admin2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прокрутка в TStringGrid megachuhancer Компоненты Delphi 1 11.06.2010 17:39
Прокрутка Tchart Николай ПН Помощь студентам 0 13.05.2010 11:09
прокрутка диаграммы в c++ Elenka89 Общие вопросы C/C++ 0 03.05.2010 20:27
Прокрутка на сайте DALLAS JavaScript, Ajax 1 07.01.2009 09:34
Прокрутка nala HTML и CSS 0 29.09.2008 16:15