Вниз
Скачать: CL | DM;

DBGrid->Columns   Найти похожие ветки 

 
lorn   (2006-10-06 16:16) [0]

вопрос детский но догнать не могу
есть DBGrid заполняемый из запроса и надо узнать скока у него колонок
если кто может дайте плиз пару строк кода


 
clickmaker ©   (2006-10-06 16:17) [1]

число колонок = число полей


 
Desdechado ©   (2006-10-06 16:20) [2]

> число колонок = число полей
Далеко не факт. Это правда только для случаев, если в квери нет persistentfields + если в гриде нет persistent columns + если у полей Visible=True + если у колонок Visible=True.
При нарушении любого из условий число колонок можно узнать у грида так
Grid.Columns.Count, но помнить при этом, что в этом списке могут быть и невидимые.


 
lorn   (2006-10-06 16:29) [3]

не совсем догнал
а как узнать (число) только отображаемые (видимые)колонки  у dbgrid"а


 
clickmaker ©   (2006-10-06 16:34) [4]

у колонки есть св-во Visible


 
lorn   (2006-10-09 11:35) [5]

всётаки как?


 
Elen ©   (2006-10-09 11:47) [6]


> lorn

DBGrid1.Columns.Count
Только мне кажется что нужно тебе юзать датасет этого грида
DBGrid1.DataSource.DataSet.Fields.Count
Ну ты понял, Да? ;-)


 
lorn   (2006-10-09 11:59) [7]

не Elen не проходит
всё равно показывает кол-во колонок сколько в запросе
(делаю sql -celect col1,col2 from table - потом в гриде visible делаю только у одного поля- а всё равно кажет 2 поля)


 
Desdechado ©   (2006-10-09 12:01) [8]

> а всё равно кажет 2 поля
барабашка кажет?


 
Elen ©   (2006-10-09 12:06) [9]


> sql -celect col1,col2 from table

Вах! Это Суперсовременный SQL? Круто - я тоже так хачу, панымаещь

> lorn

Select * from basa. Далее смотриш сколько колонок...


 
Elen ©   (2006-10-09 12:09) [10]


> lorn

А тебе нужно сколько колонок на экране?

var e,i:byte;
begin
//********* FOR ******************
e:=0;
for i :=0  to   DBGrid1.Columns.Count-1  do
begin
 if   DBGrid1.Columns[i].Visible then inc(e);
end;
//******* END FOR ****************

end;


 
Desdechado ©   (2006-10-09 12:17) [11]

> var e,i:byte;
Не делай так. Byte для этих целей нафиг не нужен. Памяти так не сэкономишь, а проблем нажить можно. Да и Integer быстрее работает...


 
lorn   (2006-10-09 12:19) [12]

Elen спасибо


 
Elen ©   (2006-10-09 12:21) [13]


> Desdechado

Да я знаю, но byte пишется быстрее чем integer (лень по клаве лишний раз нажать) ;-)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: -0.971 c
5-1141655939
werr
2006-03-06 17:38
2006.10.22
Нужен компонент для создания RAR-архивов


2-1160205479
NikIta88
2006-10-07 11:17
2006.10.22
Странное поведение OpenDialog


4-1149041613
Delphi5.01
2006-05-31 06:13
2006.10.22
ошибка в уничтожении потока Delphi+Thread+TerminateThread


2-1160244953
learner
2006-10-07 22:15
2006.10.22
Аналог SysErrorMessage для NTSTATUS.


2-1160388362
SamProf
2006-10-09 14:06
2006.10.22
Как сделать запрос IdHTTP.Get(<url>) методом POST в 10 Indy?




   Наверх