Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.25;
Скачать: CL | DM;

Вниз

CheckListBox & Query   Найти похожие ветки 

 
sensor-x ©   (2003-07-30 05:01) [0]

Уважаемые мастера, помогите разобраться, трабла у меня вот в чем: на форме есть Database1,Query1 и CheckListBox1.
Query1.SQL := select NAM from dbo.kp
Мне нужно чтобы при нажатии на кнопку (Button1) все строки из колонки NAM, таблицы kp, отобразились в CheckListBox"e
Листинг:
procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin
for I:= 0 to Query1.FieldCount - 1 do begin
CheckListBox1.Items.Add(Query1.Fields.Fields[i].AsString);
end;
end;

Только в итоге добавляется в листбокс одна (первая) строка. Подскажите в чем моя ошибка?
Заранее спасибо.


 
Evgeny V ©   (2003-07-30 05:24) [1]

По условию ты хочешь все записи(строки) по колонке NAM, а получаешь значения всех полей для одной записи. Надо так(считаем что запрос уже выполнился и еще не закрыт, сорьки код на си) -
void __fastcall TForm1::Button1Click(Sender *TObject)
{
while(!Query1.Eof)
{
CheckListBox1->Items->Add(Query1->FieldByName("NAM")->AsString);
Query1->Next();
}
}
Так как ты запрашиваешь одну колонку, можно вместо Query1->FieldByName("NAM")->AsString
делать Query1->Fields->Fields[0]->AsString Ну и вообще неплохо было бы очищать лист бокс перед заполнением:-)))



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

Текущий архив: 2003.08.25;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.017 c
1-81823
BillyJeans
2003-08-13 12:50
2003.08.25
Как узнать с какого контрола перешел фокус на текущий?


3-81584
Хозявин М
2003-07-31 21:50
2003.08.25
Запись БД на диск


1-81706
SO
2003-08-14 21:37
2003.08.25
String To PAnsiChar


1-81697
tytus
2003-08-11 11:50
2003.08.25
Цветные строки в ListView


3-81541
Afteam
2003-07-31 10:46
2003.08.25
Как избежать скроллирования DBGrid при обновлении набора данных?