to Ярослав
Предлагаю вам для наглядности вариант с умножением! прошу не пинать писал на скорую руку вроде все пашет!
http://img520.imageshack.us/my.php?image=gridw.jpg
компонент StringGrid = sgTable
Код | //---------------------------------------------------------------------------
#include <vcl.h> #pragma hdrstop
#include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { //----Заполняем StringGrid Колонки //Найменование sgTable->Cells[1][1]="Молоко"; sgTable->Cells[1][2]="Хлеб"; sgTable->Cells[1][3]="Пиво"; sgTable->Cells[1][4]="Водка";
//Количество sgTable->Cells[2][1]="50"; sgTable->Cells[2][2]="70"; sgTable->Cells[2][3]="300"; sgTable->Cells[2][4]="450";
//Стоимость sgTable->Cells[3][1]="5,50"; sgTable->Cells[3][2]="4,25"; sgTable->Cells[3][3]="8,35"; sgTable->Cells[3][4]="10,75";
} //---------------------------------------------------------------------------
void __fastcall TForm1::FormShow(TObject *Sender) {
//-------Задаем размер колонок начало sgTable->ColWidths[0]=30; sgTable->ColWidths[1]=120; sgTable->ColWidths[2]=40; sgTable->ColWidths[3]=40; sgTable->ColWidths[4]=40; sgTable->ColWidths[5]=40; //-------Задаем размер колонок окончание
//-------Найменование стобцов фиксированных рядов начало sgTable->Cells[0][0]="№"; sgTable->Cells[1][0]="Найменование"; sgTable->Cells[2][0]="Кол-во"; sgTable->Cells[3][0]="цена"; sgTable->Cells[4][0]="Итого"; sgTable->Cells[5][0]="Общая";
for (int i=1; i < sgTable->RowCount; i++) sgTable->Cells[0][i] = IntToStr(i); //-------Найменование стобцов фиксированных рядов окончание
} //---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender) { float kost, rez; int kol; rez=0;
// --Подсчет всей суммы товара //-- по каждой ячейке for (int i=1; i < sgTable->RowCount; i++){
kol= StrToInt(sgTable->Cells[2][i]); kost= StrToFloat(sgTable->Cells[3][i]); rez = kol * kost; sgTable->Cells[4][i]= FloatToStr(rez); }
//-- Общая сумма rez=0; for (int i=1; i < sgTable->RowCount; i++){ rez += StrToFloat(sgTable->Cells[4][i]); sgTable->Cells[5][sgTable->RowCount-1] = FloatToStr(rez); } rez=0; } //---------------------------------------------------------------------------
|
|