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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2008, 11:29   #1
Aravild
 
Регистрация: 11.08.2008
Сообщений: 6
Печаль TChart и автопрокрутка

Есть TChart который включает пару Series.

После выполнения Series1.AddXY(X, Y, '', clRed); добавляется определенный отрезок линии, но когда ломаная достигает границы разметки сетки (Bottom Axis) то рисование продолжается за пределами видимой области. Автопрокруки в право не происходит.
Подскажите пожалуйста, как сделать автопрокрутку?
Aravild вне форума Ответить с цитированием
Старый 03.12.2008, 11:37   #2
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Chart1.BottomAxis.Automatic:=true;
_Dmitry вне форума Ответить с цитированием
Старый 03.12.2008, 11:42   #3
Aravild
 
Регистрация: 11.08.2008
Сообщений: 6
По умолчанию

Да оно и стоит BottomAxis.Automatic:=true;

Я задал максимум отображения точек и инкремент. Без этого - никак.
BottomAxis.Minimum := 0;
BottomAxis.Increment := 1;
BottomAxis.Maximum := 25;

Автопрокрутки не происходит.
Aravild вне форума Ответить с цитированием
Старый 03.12.2008, 11:58   #4
_Dmitry
Участник клуба
 
Аватар для _Dmitry
 
Регистрация: 02.09.2007
Сообщений: 1,193
По умолчанию

Если у вас:
BottomAxis.Automatic:=true;
то
BottomAxis.Minimum := 0;
BottomAxis.Maximum := 25;
работать не будут...

Поэтому, когда X<=25 ставьте BottomAxis.Automatic:=false; и используйте ваши настройки, когда X>25 установите BottomAxis.Automatic:=true; и пусть максимум устанавливает сам Chart.
_Dmitry вне форума Ответить с цитированием
Старый 03.12.2008, 12:34   #5
Aravild
 
Регистрация: 11.08.2008
Сообщений: 6
По умолчанию

Спасибо за помощь.
Сделал так:
Код:
  
  MainChart.BottomAxis.Automatic := false;
  MainChart.BottomAxis.AutomaticMinimum := false;
  MainChart.BottomAxis.AutomaticMaximum := false;
  MainChart.BottomAxis.Minimum := 0;
  MainChart.BottomAxis.Increment := 1;
  MainChart.BottomAxis.Maximum := 25;

    if Series1.Count > 25 then 
     begin
      MainChart.BottomAxis.Maximum := Series1.XValues[Series1.Count - 1];
      MainChart.BottomAxis.Minimum := Series1.XValues[Series1.Count - 26];
    end;
Aravild вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TChart nataly60 Помощь студентам 1 06.06.2008 19:13
Tchart Droid Общие вопросы Delphi 9 27.05.2008 20:38
TStringGrid автопрокрутка Carbon Общие вопросы Delphi 5 08.03.2008 12:58
TChart в C++ Builder pkud Общие вопросы Delphi 0 01.02.2008 15:48
RichEdit - автопрокрутка Svop Компоненты Delphi 1 14.02.2007 23:26