![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid->Columns [D5, 2000, XP]
lorn © (2006-10-06 16:16:00)вопрос детский но догнать не могу
есть DBGrid заполняемый из запроса и надо узнать скока у него колонок
если кто может дайте плиз пару строк кода
Elen (2006-10-09 12:21:00) [1]
> Desdechado
Да я знаю, но byte пишется быстрее чем integer (лень по клаве лишний раз нажать) ;-)
lorn (2006-10-09 12:19:00) [2]Elen спасибо
Desdechado (2006-10-09 12:17:00) [3]> var e,i:byte;
Не делай так. Byte для этих целей нафиг не нужен. Памяти так не сэкономишь, а проблем нажить можно. Да и Integer быстрее работает...
Elen (2006-10-09 12:09:00) [4]
> 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;
Elen (2006-10-09 12:06:00) [5]
> sql -celect col1,col2 from table
Вах! Это Суперсовременный SQL? Круто - я тоже так хачу, панымаещь
> lorn
Select * from basa. Далее смотриш сколько колонок...
Desdechado (2006-10-09 12:01:00) [6]> а всё равно кажет 2 поля
барабашка кажет?
lorn (2006-10-09 11:59:00) [7]не Elen не проходит
всё равно показывает кол-во колонок сколько в запросе
(делаю sql -celect col1,col2 from table - потом в гриде visible делаю только у одного поля- а всё равно кажет 2 поля)
Elen (2006-10-09 11:47:00) [8]
> lorn
DBGrid1.Columns.Count
Только мне кажется что нужно тебе юзать датасет этого грида
DBGrid1.DataSource.DataSet.Fields.Count
Ну ты понял, Да? ;-)
lorn (2006-10-09 11:35:00) [9]всётаки как?
clickmaker (2006-10-06 16:34:00) [10]у колонки есть св-во Visible
lorn (2006-10-06 16:29:00) [11]не совсем догнал
а как узнать (число) только отображаемые (видимые)колонки у dbgrid'а
Desdechado (2006-10-06 16:20:00) [12]> число колонок = число полей
Далеко не факт. Это правда только для случаев, если в квери нет persistentfields + если в гриде нет persistent columns + если у полей Visible=True + если у колонок Visible=True.
При нарушении любого из условий число колонок можно узнать у грида так
Grid.Columns.Count, но помнить при этом, что в этом списке могут быть и невидимые.
clickmaker (2006-10-06 16:17:00) [13]число колонок = число полей