Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Опять про Chart [D6, Win95/98]


Катерина ©   (2002-04-23 14:25:00) 

В RunTime устанавливаю кол-во точек на PAGE CODE>Chart.MaxPointsPerPage := theZoom;
Для линейного графика это работает, а для точечного (TPointSeries) - только одна точка рисуется. Почему?


MBo   (2002-04-24 09:44:00) [1]

Еще один глюк, который я видел-
две серии, ось для одного слева, для другого справа. если в одной из серий идут только постоянные Y-значения, программа вылетает.


Катерина   (2002-04-24 09:32:00) [2]

Кажется я разобралась. Если первый график (SeriesList[0]) не задан (Clear), причем все равно какой: линейный или точечный, то при изменении Chart.MaxPointsPerPage, она реагирует неадекватно: показывает 1 точку с нулевой абсциссой, а если в SeriesList[0]) задан любой график, проблем нет.


MBo   (2002-04-23 16:09:00) [3]

вероятно, это глюк. сделай pointserie первой в списке.(удали и снова добавь lineserie)


Катерина   (2002-04-23 15:37:00) [4]

Знаю и использовала UpDown и пр. Но все равно не работает, хотя установки для линейного и точечного графика одинаковые почти. Создала еще один точечный график и рез-т тот же: если присутствует линейный - рисует все, если точечные без динейного - одну точку. Причем такая особенность: абсциссы всех графиков - целые числа, начинающиеся с 1 (1,2,3,...), а когда рисуется эта самая одна точка (если отсутствует линейный график), ее абсцисса - 0.


MBo   (2002-04-23 15:03:00) [5]

У меня и это работает. В настройках Chart ничего не наворочено?
Кстати, про StrToInt и StrToIntDef знаешь?
И, может, для задания UpDown или SpinEdit удобно будет?


Катерина   (2002-04-23 14:52:00) [6]

Вот кусок кода theZoom - целое, положительное.

procedure TFrame_EditPar.Edit_zoomChange(Sender: TObject);
var code, theZoom : integer;
begin
val(Edit_zoom.Text,theZoom,code);
if (Code = 0) and (theZoom > 0) then
Chart.MaxPointsPerPage := theZoom
else
Chart.MaxPointsPerPage := 1+k_pro-n_pro;
end;


Причем в Chart - 2 серии : линейная и точечная, определенные в одних и тех же целых аргументах. Если Линейный график присутствует один или вместе с точечным, то все в порядке. Но если только точечный, то при любом изменении theZoom, рисуется только одна точка.

Спасибо за подсказку: как в RunTime менять размер точки в точечном графике. Очень пригодилось.


MBo   (2002-04-23 14:38:00) [7]

у меня все работает. чему равно theZoom?


Наверх

Титульная страница Поиск, карта сайта Написать письмо