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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.02.2010, 20:31   #1
ДмитрийЗеленый
 
Регистрация: 25.02.2010
Сообщений: 3
По умолчанию Chart выдает ошибку Einvalidpointer

Доброго всем времени суток. При работе с компонентом Chart возникает ошибка Einvalidpointer
Код:
procedure TBazovaya.Button6Click(Sender: TObject);
var
i:integer;
begin
series1.Clear;
t:=1;
for i:=1 to strtoint(E_interval.text) do
begin
graf[i-1]:=strtofloat(skobki(razbivkanaelmen(edit1.Text)));
bazovaya.Chart1.Series[0].Add(graf[i-1],inttostr(i),clGreen);
t:=t+1;
end;
end;
если ставишь // перед
Код:
bazovaya.Chart1.Series[0].Add(graf[i-1],inttostr(i),clGreen);
то сразу начинает все нормально работать. Проверял значения в массиве graf все как положено, стоит убрать комментарий перед строкой все ошибка.
Самое странное что программа работает без выдачи ошибки если в строке формулы указать показатель деленный на показатель, но если один показатель то не работает.
Никак не могу выявить закономерность, помогите хоть советом каким, бешенства не хватает на эту непонят ку
Весь исходник не влазит в пост, приложением нельзя, ума не приложу как показать весь текст программы. Может там Create(self) надо?
В режиме отладки все прогоняется после end вылетает ошибка
Изображения
Тип файла: jpg Error.jpg (23.4 Кб, 58 просмотров)
Тип файла: jpg work.jpg (99.3 Кб, 128 просмотров)
Тип файла: jpg dontwork.jpg (56.5 Кб, 137 просмотров)

Последний раз редактировалось mihali4; 09.03.2010 в 19:05.
ДмитрийЗеленый вне форума Ответить с цитированием
Старый 25.02.2010, 21:30   #2
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

Что такое graf у тебя ?
Массив "array of real" , например ? Или что ?

Я почему спрашиваю... выражение graf[i-1] при первой итерации даст обращение к нулевому элементу массива ...
Я думаю это не правильно.
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 25.02.2010, 21:45   #3
ДмитрийЗеленый
 
Регистрация: 25.02.2010
Сообщений: 3
По умолчанию

Код:
graf:array of double;
если к примеру написать вот так
Код:
procedure TBazovaya.Button6Click(Sender: TObject);
var
i:integer;
begin
series1.Clear;
t:=1;
for i:=1 to strtoint(E_interval.text) do
begin
graf[i-1]:=strtofloat(skobki(razbivkanaelmen(edit1.Text)));
//bazovaya.Chart1.Series[0].Add(graf[i-1],inttostr(i),clGreen);
showmessage(floattostr(graf[i-1]));
t:=t+1;
end;
end;
и в Edit1 будет "=[A 190]" то он двенадцать раз выдает 8378375 и при этом никакой ошибки не выскакивает подключаю Chart1 все хана
ДмитрийЗеленый вне форума Ответить с цитированием
Старый 25.02.2010, 22:09   #4
ДмитрийЗеленый
 
Регистрация: 25.02.2010
Сообщений: 3
По умолчанию

Мне хотя бы малейший намек где искать в чем дело всему буду жутко рад
Изображения
Тип файла: jpg error2.jpg (91.3 Кб, 140 просмотров)

Последний раз редактировалось mihali4; 09.03.2010 в 19:06.
ДмитрийЗеленый вне форума Ответить с цитированием
Старый 09.03.2010, 17:13   #5
leto
Новичок
Джуниор
 
Регистрация: 25.02.2010
Сообщений: 1
По умолчанию

наверное, нужно задать размерность graf:
m:=strtoint(E_interval.text);
setlength(graf,m);
a потом рисовать график
leto вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выдает ошибку следующий код: Polotenchik Общие вопросы Delphi 16 25.07.2009 22:27
Макрос выдает ошибку Romuald Microsoft Office Excel 2 15.04.2009 22:42
ADOQuery - выдает ошибку kiber0net0 Общие вопросы Delphi 2 02.09.2008 19:49
Windows2003 ошибку выдает Cantana Windows 11 07.12.2007 06:04
MasterSource - выдает ошибку nataly_ukr БД в Delphi 10 12.10.2007 13:49