Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
ВнизПроблемы с Series :( Найти похожие ветки
← →
Dishar (2002-06-12 17:44) [0]День добрый!
Возникла проблема. При использовании метода AddX выдается не то что мне нужно. Например я задаю вывести прямую линию следующим образом:
<cod>
X_gr:=Xpk;
GraphForm.Series1.Clear;
While X_gr<=Xpn do
Begin
Y_gr:=10;
With GraphForm do
Begin
Series1.AddX(X_gr);
Series1.AddY(Y_gr);
X_gr:=X_gr+1;
End;
GraphForm.Series1.Repaint;
End;
</cod>
Вместо прямой линии выдется некая зигзагообрзная фигура... почему-то... эХъ... Переменные X_gr и Y_gr вещественные (Real)
Теперь пыьаясь разобраться в чем-же собственно дело, трейся программу во все стороны я не нашел ошибки, переменные принимают именно те значения которые и должныпринимать а выдаются на график в восвершенно непотребном виде.
Решил заменть метод AddX и AddY на XValues[index]:= и YValues[index]:= соответсвенно. В результате чего возникает рантайм ошибка, ну типа Лист индекс аут оф рэнж... что делать не понимаю... вроде все очищаю, вроде все репеинтю... подскажите плз...
Заранее благодарен Dishar
← →
dishar (2002-06-12 19:29) [1]Что? Никто не занет чтоли? :))
← →
MBo (2002-06-12 19:29) [2]Если бы я использовал TChart, мне было бы неочевидно, что именно добавляется методами AddX или AddY. Тогда бы я нажал F1 и увидел, что есть такое AddXY, и больше бы не сомневался.
Теперь не лирика.
AddY добавляет НОВУЮ точку, инкрементируя X (проверь, наверно, на 1).
Очевидно, аналогично действует AddX (еще одна точка).
XValues[index] применимо лишь к уже существующему номеру точки, иначе возникает указанная ошибка.
← →
dishar (2002-06-12 20:07) [3]Увадаемый МВо. Я знаю, что ADDX добавляет новую точку... но какого лешего он добавлет 20 точек вместоположенных десяти, тем более что перед началом добавления я очишаю сириес полностью!
Спасибо за толкование метода XVAlues. В данном случае он не применим, я не имею ни малейшего представления сколько точек у меня возникнет :) 10-тка поставлена так для теста :)
С уважением, Dishar
← →
MBo (2002-06-12 20:50) [4]for i:= 1 to 10 do
AddX// добавляет 1
AddY//добавляет ВТОРУЮ точку
end;
Сколько получается?
Я насчитал 20.
Используй AddXY
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c