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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.08.2010, 16:37   #1
Dimitr_88
Пользователь
 
Регистрация: 03.08.2010
Сообщений: 11
По умолчанию From Grid to Chart

Первый раз столкнулся вот с таким вопросом: как построить Чарт по значениям из Грида? Как я понял по литературе в и-нете должно быть что-то вроде такого:
Код:
for(int k=1;k<=14;k++)
        {
                UngaRes->Chart1->Series->XValue[k]=StrToFloat(UngaRes->StringGrid1->Cells[0][k]);
                UngaRes->Chart1->Series->YValue[k]=StrToFloat(UngaRes->StringGrid1->Cells[1][k]);
        }
Однако выдает ошибку.
Как можно реализовать такую штуку по другому?

Последний раз редактировалось Stilet; 04.08.2010 в 16:53.
Dimitr_88 вне форума Ответить с цитированием
Старый 04.08.2010, 16:54   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
for(int k=1;k<=14;k++)
        {
                UngaRes->Chart1->Series[Номер графика на диаграмме]->AddY(StrToFloat(UngaRes->StringGrid1->Cells[0][k]));
                       }
I'm learning to live...

Последний раз редактировалось Stilet; 04.08.2010 в 16:56.
Stilet вне форума Ответить с цитированием
Старый 05.08.2010, 09:37   #3
Dimitr_88
Пользователь
 
Регистрация: 03.08.2010
Сообщений: 11
По умолчанию

Переписал вот так:

UngaRes->Chart1->Series[1]->AddX(StrToFloat(UngaRes->StringGrid1->Cells[0][k]));
UngaRes->Chart1->Series[1]->AddY(StrToFloat(UngaRes->StringGrid1->Cells[1][k]));

При переходе к 3-й форме выдало ошибку:

Project "......exe" raised exception class EListError with message 'List index out of bounds (1)'. Process stopped. Use Step or Run to continue.

Структура программы следующая. 3 формы:
1. Типа главное меню с кнопками, нажимая на одну из них происходит переход к какому-либо измерению.
2. Окно ввода постоянных для дальнейшего расчета. Также на этой форме находится кнопка, которая считывает введенные значения и по ним заполняет "StringGrid1" ну а после её заполнения строит(в данном случае не строит) Chart1. если убираю этот цикл 3-е окно открывается.
3. Окно на котором содержится "StringGrid1" и Chart1.
Dimitr_88 вне форума Ответить с цитированием
Старый 05.08.2010, 11:42   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Не. стоп... Ты что-то не в ту степь...
Я правильно понял у тебя в гриде координаты X,Y?
Тогда
Код:
 UngaRes->Chart1->Series[1]->AddXY(StrToFloat(UngaRes->StringGrid1->Cells[0][k]),StrToFloat(UngaRes->StringGrid1->Cells[1][k]));
Но опять таки в твоем задании ничего не понятно. Сколько графиков, откуда данные брать...
Обычно когда ты создаешь на Диаграмме график, среда создает на каждый график свою переменку, и уже ты к этой переменке обращаешся, а тут совершенно неясно как ты Chart настроил.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.08.2010, 12:27   #5
Dimitr_88
Пользователь
 
Регистрация: 03.08.2010
Сообщений: 11
По умолчанию

Переписал Через АддХУ - та же ошибка.

Да, в Гриде координаты. График 1. Настраивал так: Добавил серию и обозначил пределы.
Dimitr_88 вне форума Ответить с цитированием
Старый 05.08.2010, 13:00   #6
Dimitr_88
Пользователь
 
Регистрация: 03.08.2010
Сообщений: 11
По умолчанию

Все решил проблему. Спасибо. Я на той же форме, что и графики казместил отдельно кнопку построения графика. Код вот такой.

for(int k=1;k<=14;k++)
{
Series1->AddXY(StrToFloat(UngaRes->StringGrid1->Cells[1][k]),StrToFloat(UngaRes->StringGrid1->Cells[0][k]));
}
Dimitr_88 вне форума Ответить с цитированием
Старый 05.08.2010, 13:21   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Я на той же форме, что и графики казместил отдельно кнопку построения графика.
Вот эт правильно. )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.09.2010, 23:24   #8
maxflint
работаю за еду
Пользователь
 
Аватар для maxflint
 
Регистрация: 31.10.2009
Сообщений: 64
По умолчанию

А вот я когда добавляю например точку (1 1). у меня абсцисса какая-то невообразимая получается, число большое 32768-) что делать?
Вотан ждёт меня в своих чертогах, на свой вечный пир!
maxflint вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помощ в db grid deadneoo Компоненты Delphi 0 01.05.2010 15:41
из Grid в Edit stp56 Общие вопросы Delphi 8 18.04.2009 01:53
String Grid в VC++ Аlex Общие вопросы C/C++ 1 30.01.2009 22:48
Grid nimf Общие вопросы Delphi 2 22.04.2008 13:16
Help!Grid и Edit Дамир БД в Delphi 1 16.02.2007 02:05