C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Как убрать пустые ячейки
marconi
Отправлено: 18.03.2004, 19:33


Станционный диспетчер

Группа: Участник
Сообщений: 86



int J; // вводим количество
for (J=0;J<29;J++)Col[J]=StrToIntDef(AdvStringGrid1->Cells[3][1+J],0);

//-----------------------------------------------------------------------------

int I; // вводим цену
for (I=0;I<29;I++)Cen[I]=StrToFloatDef(AdvStringGrid1->Cells[4][1+I],0);





int y; // умножаем COL на Cen
for (y=0,Itog1=0;y<29;y++)Itog1+=x[y]=Col[y]*Cen[y];


// и выводим данные

// здесь в Cells[5][], где невводились данные в таблице отображаются как 0,00
// как можно сделать эти ячейки невидимыми или пустыми. (А то они идут в печать)
// здесь пробовал:
// if(x>0) не прошло
for (int i1 = 1, i2 = 0; i1 < AdvStringGrid1->RowCount ; i1++, i2++)


AdvStringGrid1->Cells[5][i1]= FloatToStrF(x[i2],ffFixed,10,2);



Label9->Caption=FloatToStrF(Itog1,ffFixed,10,2);

}
exp
Отправлено: 18.03.2004, 23:06


Мастер участка

Группа: Участник
Сообщений: 304



странно. может я чего не понял, но обнулить значение, хранящееся в ячейке можно так:

AdvStringGrid1->Cells[что-либо][че-нибудь]="";
marconi
Отправлено: 19.03.2004, 00:06


Станционный диспетчер

Группа: Участник
Сообщений: 86



Да наверное не понял. У меня таблица в которую вводятся данные,
результат отображаются в последнем ряду. Если данные не введены
в ячейках где результат отображаются 0,00. Соответственно эти пустые строки с нулями тоже идут в печать. Я хочу чтобы пустые строки были не видны.
Допустим ввели данные в 2 строки — 2 строки должны и распечататься.,
а у меня в печать идут 2 строки и остальные 28 с нулями.
exp
Отправлено: 19.03.2004, 01:21


Мастер участка

Группа: Участник
Сообщений: 304



Таблица выглядит так?
CODE

xxx xxx xxx xxx xxx   <-\______ Данные
xxx xxx xxx xxx xxx   <-/
000 000 000 000 000
... ... ... ... ...
000 000 000 000 000
yyy yyy yyy yyy yyy <- Результат

А результат должен идти на печать?


Отредактировано exp — 19/03/2004, 02:27
Guest
Отправлено: 19.03.2004, 16:44


Не зарегистрирован







Да нет так:

Наимен колич цена сумма
4 4 16
5 5 25
6 6 36
Далее нет данных 0,00
0,00
0,00
0,00

Вот про эти нули я писал которые заполняют далее всю таблицу
до конца и в печать тоже идут.

marconi
Отправлено: 19.03.2004, 16:55


Станционный диспетчер

Группа: Участник
Сообщений: 86



Отрубился из сети и все получилось не так. Последний столбец где
отображается сумма заполнен до конца нулями.


Отредактировано marconi — 19/03/2004, 17:59
marconi
Отправлено: 19.03.2004, 17:07


Станционный диспетчер

Группа: Участник
Сообщений: 86



QUOTE (exp @ 19/03/2004, 02:23)
Таблица выглядит так
[CODE]
xxx xxx xxx xxx xxx <-\______ Данные
xxx xxx xxx xxx xxx <-/
                                          000
                                          000
                                          000

.
marconi
Отправлено: 19.03.2004, 21:28


Станционный диспетчер

Группа: Участник
Сообщений: 86



заработала smile.gif
int s; // проверяю ячейку "наименование", если пустая очищаю ячейку "итог"
for (s=0;s<31;s++)

if(AdvStringGrid1->Cells[1][s]=="")
AdvStringGrid1->Cells[5][s]="";

Отредактировано marconi — 19/03/2004, 22:30

Вернуться в Вопросы программирования в C++Builder