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

Вниз

Получение id записи   Найти похожие ветки 

 
Kostafey ©   (2007-01-28 03:46) [0]

Окажите пожалуйста содействие в следующем вопросе.
В БД (СУБД MS SQL Server) имеется ряд таблиц вида:
id   name
5    Пожар
6    Наводнение
7    Снежный буран
8    null

Я хочу получить в ComboBox значения name + еще одно (например, Все несчастья) и убрать все null, т.е.
Все несчастья
Пожар
Наводнение
Снежный буран

Для этого я использовал обычный ComboBox и в него последовательным перебором добавлял все значения.
А потом мне нужно по выбранному значению получить id (если выбрано "Все несчастья", то id пусть будет 999).

Это как-нибудь можно сделать не обращаясь повторно к БД с запросом ?


 
Palladin ©   (2007-01-28 05:43) [1]

with tadoquery.create(nil) do
 try
  connection:=...
  sql.text:="select id,name from table";
  open;
  while not eof do
   begin
    combobox.items.addobject(fields[1].asstring,tobject(fields[0].asinteger));
    next;
   end;
  close;
 finally
  free;
 end;

procedure tform1.combobox1select;
begin
 showmessage("ID="+inttostr(integer(combobox1.items.objects[combobox1.itemindex])));
end;


 
Anatoly Podgoretsky ©   (2007-01-28 12:57) [2]

> Kostafey  (28.01.2007 03:46:00)  [0]

If ComboBox[] = "Все несчастья" then result := 999 else result := ...


 
Kostafey ©   (2007-01-28 14:59) [3]

> [1] Palladin ©   (28.01.07 05:43)

Ух ты! Шикарно работает!
Но как же так. Получается, что item- это не обязательно строка, а любой объект?
а как же тогда ComboBox "понимает", что нужно тогда выводить на экран именно строки (fields[1].asstring) ?


> [2] Anatoly Podgoretsky ©   (28.01.07 12:57)

Спасибо. Так и сделал.


 
Palladin ©   (2007-01-28 21:45) [4]


> Ух ты! Шикарно работает!
> Но как же так. Получается, что item- это не обязательно
> строка, а любой объект?
> а как же тогда ComboBox "понимает", что нужно тогда выводить
> на экран именно строки (fields[1].asstring) ?

читай справку по tstrings



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

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

Наверх




Память: 0.47 MB
Время: 0.046 c
15-1169431613
SerJaNT
2007-01-22 05:06
2007.02.18
Вопросы по Wi-Fi


2-1169971490
LiteStone
2007-01-28 11:04
2007.02.18
Глюк


2-1169887745
DemonP
2007-01-27 11:49
2007.02.18
отправка почты на Delphi


2-1170076509
-Саня-
2007-01-29 16:15
2007.02.18
Подключение DBF через ADO


15-1169618650
Бумер2
2007-01-24 09:04
2007.02.18
Бумер2