![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как загрузить все данные одного поля в Combobox? [D7, Access]
Anarki © (2004-03-10 02:43:00)Есть ComboBox1.
Как загрузить в этот список все данные поля Field1 из таблицы Access?
Использую ADODataSet.
Anarki (2004-03-10 16:52:00) [1]
> VAleksey © (10.03.04 16:23) [10]
Прикол в том, что только что добавил ещё один такой же DBCombobox - с ним всё ОК!
VAleksey (2004-03-10 16:23:00) [2]
> Anarki © (10.03.04 16:15) [9]
Где - то в коде ошибка :-))
Anarki (2004-03-10 16:15:00) [3]Благодарю. Но есть один маленький глюк:
Данные загружаются в Combobox, при выборе какого-то поля из списка, а затем перехода к другому элемента управления или при нажатии на пустое место формы выбранный элемент з списка сбрасывается.
Т.е. например в списке
Понедельник
Вторник
Среда
Четверг
Выбираю Четверг. Потом кликаю на другой элемент упрлавения (например поле Edit), в Combobox'e значение сбрасывается опять к Понедельнику.
VAleksey (2004-03-10 15:02:00) [4]
> YurikGl © (10.03.04 11:21) [6]
Сравнение с NULL ведет к непредсказуемым последствиям. Если вообще допустимо.
Вместо сравнения лучше использовать
> DataModule1.ADODataSet1.Fields[1].IsNull
Vlad (2004-03-10 11:27:00) [5]
> Anarki © (10.03.04 02:43)
Если хочешь чтобы выпадающий список формировался автоматически из значений некоторого поля, используй DBLookupComboBox.
За выпадающий список отвечает свойство ListSource и ListField
YurikGl (2004-03-10 11:21:00) [6]ComboBox1.Items.Clear;
DataModule1.ADODataSet1.First;
repeat
if DataModule1.ADODataSet1.Fields[1].Value<>null then
ComboBox1.Items.Add(DataModule1.ADODataSet1.Fields[1].Value);
DataModule1.ADODataSet1.Next;
until DataModule1.ADODataSet1.Eof;
Anarki (2004-03-10 10:18:00) [7]Да, значения в Field1 уникальные.
Допустим использую DBCombobox. Как загрузить туда список значений какого-нибудь поля из таблицы БД?
Там есть свойство DataSource, но вот что туда писать?
SPIRIT (2004-03-10 08:19:00) [8]
> Fay © (10.03.04 08:03) [3]
обратного тоже нигде не сказано
Fay (2004-03-10 08:03:00) [9]2SPIRIT © (10.03.04 06:16) [2]
Нигде не сказано, что значения в Field1 уникальны.
SPIRIT (2004-03-10 06:16:00) [10]TDBCombobox
Fay (2004-03-10 02:47:00) [11]Нужно пойти в начало датасета и ползти то конца. При этом на каждой записи добавлять "данные этого поля" в ComboBox1.
Требуются уточнения?