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

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

ComboBox и ID выбранного элемента [D6]


AlexMey ©   (2002-05-20 02:27:00) 

Уважаемые мастера и подмастерья.

Подскажите...

У меня есть несколько таблиц справочников - структура: ID, текстовое значение
Например: Справочник Цвет волос:

1 рыжие
2 русые
3 чёрные
...

при выборе данных из базы для таблиц такого типа обычно используют элемент типа ComboBox.
И при выборе элемента из ComboBox мы можем определить только текстовое значение, хотя меня больше интересует именно его ID.
А для получения ID мне приходиться каждый раз сравнивать текст выбранного пункта с полем. :-(
Подскажите, как мне можно сразу получить ID выбранного элемента. Наверняка, это как-то просто решается, как, к примеру, в Web программмировании - когда на сервер при отсылке формы передаётся именно value значения выбранного элемента из списка, а не его текст.

Заранее бдагодарен, Александр.


Dimaiv   (2002-05-20 17:19:00) [1]

ID:=ComboBox1.ItemIndex+1 (Это сработает если ID у тебя идет по
порядку т.е. 1.2.3.4.5 и т.д)


Lusha   (2002-05-20 14:22:00) [2]

>AlexMey © (20.05.02 02:27)
Настоятельно рекомендую прислушаться к fnatali © (20.05.02 06:24)...


Meow   (2002-05-20 13:49:00) [3]

а вот тебе примерчик как добавить:

with dmMain.taTransports do
try
Open;
cbTransports.Items.Clear;
if not IsEmpty() then
while not eof do
begin
cbTransports.Items.AddObject(FieldByName("name").AsString,Tobject(FieldByName("id").AsInteger));
Next;
end;
Close;
except
;
end;


а вот - как получить id-шник:
iID:=integer(cbTransports.Items.Objects[cbTransports.ItemIndex]);


Леха_   (2002-05-20 09:56:00) [4]

У TStrings(а это в том числе и Items комбобокса) есть свойство Objects
с помощью преобразования типов запихиваешь в это свойство ID вот и все


fnatali   (2002-05-20 06:24:00) [5]

Попробуй DBLookupComboBox


Наверх

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