Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Вывод данных в таблицу


Автор: BaLaBaXa 8.5.2006, 13:06
Здравствуйте!
Я пишу программу на Borland C++ Builder 6. В ней происходят вычисления по формулам в одном цикле for, который заканчивается командой break при невыполнении кое-какого условия.
У меня такая проблема: как вывести данные по окончании расчетов в таблицу, в которой число строк равно количеству кругов цикла, а в столбцах значения посчитанных переменных после каждого круга цикла? smile  

Автор: Artemon 8.5.2006, 18:33
Table1->FieldByName("ZNACH")->AsIntrger = X;

 

Автор: BaLaBaXa 8.5.2006, 23:29
А можно немного поподробнее... smile 
Цитата

Table1->FieldByName("ZNACH")->AsIntrger = X;

Что должно быть вместо "ZNACH" и вместо X?

После компиляции такая ошибка:
E2316 'AsIntrger' is not a member of 'TField'

Я просто кинул на форму компонент Table1...не меняя его свойств...  smile  

Автор: sexton 9.5.2006, 10:23
Жуть! Давай по порядку.
1. Ты используешь базы данных? я так понял - нет. 
2. Если верно п.1, то тее нужен не компонент Table, а компонент StringGrid - визуальный компонент для отображения сетки.
3. После прогона этого своего цикла используй переменную из for для установки нужного кол-ва строк, например:
Код

int i =0;
for (i = 0; i < 10; i++)
{
........//тут твои действ
}
StringGrid1->RowCount = i; //свойство RowCount отвечает за количество строк, аналогично ColCount- количество стобцов.

4. Чтобы записать что-то в ячейки грида нужно обратиться к свойству StringGrid->Cells[aCol][aRow], где aCol И aRow - номера нужной столбца и строки.
Вносить данные с типом не AnsiString туда можно после из приобразования к типу AnsiString (например IntToStr)
Пример из справки:
Цитата

This code fills each cell with a number. The numbers are arranged in consecutive order by rows.
Код

void __fastcall TForm1::Button1Click(TObject *Sender)

{

  int I, J, K;

  K = 0;

  for (I = 0; I < StringGrid1->ColCount; I++)
    for (J = 0; J < StringGrid1->RowCount; J++)
      StringGrid1->Cells[I][J] = IntToStr(++K);
}

 

Автор: BaLaBaXa 10.5.2006, 17:18
Спасибо большое!
Теперь всё работает!  smile  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)