Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите разобраться с компонентом TDBListBox [D7, Paradox]


vodvorezlaya ©   (2006-09-06 14:55:00) 

Доброго времени суток.

Ув.Мастера подскажите, вот в TDBListBox компоненте есть свойства DataSource и DataField где можно указать вплоть до колонки(field)

Но я никак не пойму должна же быть какая-то команда для загрузки сразу всех значений из field в TDBListBox?

Или тогда чем этот компонент отличается от обычного ListBox.
Спасибо.


Shaman_   (2006-09-07 13:00:00) [1]

Тебе кажется нужен DBLookupListBox:
TDBLookupListBox.ListSource
TDBLookupListBox.ListField
TDBLookupListBox.KeyField
TDBLookupListBox.KeyValue - ключ текущей записи. Открыт как для чтения так и для записи


vodvorezlaya   (2006-09-07 10:41:00) [2]


>  Ну мне вывод и нужен.
>
>
>
> > Bless ©   (07.09.06 10:15) [6]
> > ...Он не предназначен для вывода...
>
>
> :)

ну обчитался немного   :)


Bless   (2006-09-07 10:29:00) [3]


> Ну мне вывод и нужен.



> Bless ©   (07.09.06 10:15) [6]
> ...Он непредназначен для вывода...


:)

А вообще см [7]


vodvorezlaya   (2006-09-07 10:25:00) [4]


> Ты неправильно (и это частая ошибка) понимаешь назначение
> компонента DBListBox.
>
> Он не предназначен для вывода значений поля, заданного DataField.
>  
> Он предназначен для присвоения полю (DataField) текущей
> строки датасета, (заданного DataSource), одного из значений
> (которые задаются в Items).

Ну мне вывод и нужен.
Я понял просто перебрать все значения базы данных и вывести их.

Но думаю есть просто одна процедура чтоб вывести сразу все значения поля


Bless   (2006-09-07 10:24:00) [5]

Грид вполне подойдет в твое ситуации. Число колонок в гриде определяется свойством columns. Проще всего получить доступ к этому свойству, дважды кликнув по гриду.

Можешь, в принципе, воспользоваться DBLookupListBox.
Он аналогичен DBListBox по назначению. Но отличается по способу предоставления значений для выбора. DBListBox предоставляется значения в Items (которое ты можешь заполнить по своему усмотрению).
А DBLookupListBox вместо Items дает свойства ListSource, ListField.
Список для выбора значений будет состоять из всех значения поля ListField датасета ListSource (Т.е. то, что ты хотел от DBListBox).
В твоем случае нужно видимо, заполнить свойства ListSource, ListField этого компонента, оставив пустыми DataSource, DataField.


Bless   (2006-09-07 10:15:00) [6]

vodvorezlaya>

Ты неправильно (и это частая ошибка) понимаешь назначение компонента DBListBox.

Он не предназначен для вывода значений поля, заданного DataField.
Он предназначен для присвоения полю (DataField) текущей строки датасета, (заданного DataSource), одного из значений (которые задаются в Items).


vodvorezlaya   (2006-09-07 08:13:00) [7]

Народ подскажите метод записи DBListBox сразу всех значений

Ведь компонент DBGrid даже во время разработки сразу отображает все колонки.


vodvorezlaya   (2006-09-06 16:17:00) [8]


> Только нафига тебе TDBListBox?

Дак не попросту такой компонент сделали, или они по приколу ввели свойства DataSource и DataField?


Megabyte   (2006-09-06 16:07:00) [9]

Ну сделай сам/сама загрузку через запрос и построчный ввод в Items компонента TListBox. Только нафига тебе T DBListBox?


vodvorezlaya   (2006-09-06 15:17:00) [10]


> А зачем?

При открытии окна нужно отобразить в поле TDBListBox все значения первого ключевого поля, а по двойному щелчку одного из компонентов списка выводить остальные данные, содержащиеся в таблице.

Т.Е. нужна функция загрузки всех значений field в TDBListBox!


Германн   (2006-09-06 15:10:00) [11]


> Но я никак не пойму должна же быть какая-то команда для
> загрузки сразу всех значений из field в TDBListBox?
>

А зачем?
И вообще. Может тебе нужно копать в сторону TDBLookupComboBox?


Наверх

Титульная страница Поиск, карта сайта Написать письмо