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

Вниз

Как заполнить список TDBComboBox.Items данными из DataSet?   Найти похожие ветки 

 
Abcdef123   (2008-08-26 06:05) [0]

здравствуйте, Мастера.
Примитивный вопрос наверно. Этот вопрос по оптимальности в общем-то.
Я могу заполнить список вот так:
var
 stlList : TStringList;
begin
 stlList := TStringList.Create;
 dataset.first;
 While not dataset.eof do
 begin
   stlList.Add(dataset.FieldByName("Pole1").AsString);
   dataset.Next;
 end;
 DBComboBox1.Items.Assign(stlList);

Можно правда избежать TStringList, сразу дополнять построчно значение в DBComboBox1. Но мне кажется, что можно более грамотно с точки зрения программирования и короче это сделать (одним махом так сказать). Подскажите, плз, как?


 
Sergey13 ©   (2008-08-26 08:36) [1]

Тебе наверное нужен TDBLookupComboBox, а не TDBComboBox.


 
Anatoly Podgoretsky ©   (2008-08-26 08:48) [2]

> Abcdef123  (26.08.2008 6:05:00)  [0]

Перед var добавить procedure или function


 
Abcdef123   (2008-08-26 09:15) [3]

To [1]
Насчет TDBLookupComboBox я знаю как использовать, просто в существующей программе используется TDBComboBox, мне просто надо этот же компонент использовать, просто, данные закачать из другого источника. И мой вопрос был прежде всего познавательный, возможно ли более оптимально заполнить список, или только построчно (каждую запись таблицы) добавлять?

To [2] ну уж это я знаю, :-)))))))
просто я на форум написала коротенький кусок программы

Так есть ли какие реальные предложения?


 
Anatoly Podgoretsky ©   (2008-08-26 09:36) [4]

> Abcdef123  (26.08.2008 9:15:03)  [3]

Предложеный вариан, вполне достаточен, только подумать над параметрами.
Я бы передавал TDataset и TSrings


 
asail   (2008-08-26 20:13) [5]

И не забудь StringList свой убить в конце... Лучше всего try ... finally используй.


 
{RASkov} ©   (2008-08-26 21:14) [6]

> И не забудь StringList свой убить в конце... Лучше всего try ... finally используй.

Если быть более оптимальным то он(временный TStringList) вообще не нужен в данном примере...
Зачем лишний раз дергаться? Перед циклом сделать DBComboBox1.Items.Clear;
В цикле DBComboBox1.Items.Add(dataset.FieldByName("Pole1").AsString);
ЗЫ: Авторше вопроса это)



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
11-1194121276
LazyBob
2007-11-03 23:21
2008.10.05
КалорДиалог проблема небольшая


2-1219998340
evger
2008-08-29 12:25
2008.10.05
вопрос о dll


1-1198856107
Max
2007-12-28 18:35
2008.10.05
Подсказка...


3-1207287705
Oruc
2008-04-04 09:41
2008.10.05
Проблема с Юникод (Delphi 6 +ADOStoredProc+TNTEdit+MS SQL 2005)


4-1197398579
Jolik
2007-12-11 21:42
2008.10.05
Как сделать свои подсказки...