Форум: "Базы";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
ВнизComboBox и ID выбранного элемента Найти похожие ветки
← →
AlexMey (2002-05-20 02:27) [0]Уважаемые мастера и подмастерья.
Подскажите...
У меня есть несколько таблиц справочников - структура: ID, текстовое значение
Например: Справочник Цвет волос:
1 рыжие
2 русые
3 чёрные
...
при выборе данных из базы для таблиц такого типа обычно используют элемент типа ComboBox.
И при выборе элемента из ComboBox мы можем определить только текстовое значение, хотя меня больше интересует именно его ID.
А для получения ID мне приходиться каждый раз сравнивать текст выбранного пункта с полем. :-(
Подскажите, как мне можно сразу получить ID выбранного элемента. Наверняка, это как-то просто решается, как, к примеру, в Web программмировании - когда на сервер при отсылке формы передаётся именно value значения выбранного элемента из списка, а не его текст.
Заранее бдагодарен, Александр.
← →
fnatali (2002-05-20 06:24) [1]Попробуй DBLookupComboBox
← →
Леха_ (2002-05-20 09:56) [2]У TStrings(а это в том числе и Items комбобокса) есть свойство Objects
с помощью преобразования типов запихиваешь в это свойство ID вот и все
← →
Meow (2002-05-20 13:49) [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]);
← →
Lusha (2002-05-20 14:22) [4]>AlexMey © (20.05.02 02:27)
Настоятельно рекомендую прислушаться к fnatali © (20.05.02 06:24)...
← →
Dimaiv (2002-05-20 17:19) [5]ID:=ComboBox1.ItemIndex+1 (Это сработает если ID у тебя идет по
порядку т.е. 1.2.3.4.5 и т.д)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c