Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2010, 18:03   #1
Domanoff
Форумчанин
 
Регистрация: 05.03.2010
Сообщений: 125
По умолчанию ComboBox с данными

подскажите как проще вывести в список ComboBox, данные таблицы(interbase) , а потом еще при выборе( в ComboBox) сохранять id этого поля....
пожалейте новичка
Domanoff вне форума Ответить с цитированием
Старый 20.04.2010, 18:07   #2
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

а не будет ли проще использовать DBLookupComboBox??
в listosource - нужный датасорс
в listField - нужное поле
в Keyfield - id
maLoy*508 вне форума Ответить с цитированием
Старый 20.04.2010, 18:19   #3
Domanoff
Форумчанин
 
Регистрация: 05.03.2010
Сообщений: 125
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
а не будет ли проще использовать DBLookupComboBox??
в listosource - нужный датасорс
в listField - нужное поле
в Keyfield - id
а как приблизительно код с запросом в query будет выглядеть?
пожалейте новичка
Domanoff вне форума Ответить с цитированием
Старый 20.04.2010, 18:27   #4
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

не знаю что вы имеете ввиду...
DBLookupComboBox1.KeyValue будет содержать ключ(значение ключевого полян, если вы конечно, поставите), а список будет содержать наименование....
это если я вас правильно понял
maLoy*508 вне форума Ответить с цитированием
Старый 20.04.2010, 18:39   #5
Domanoff
Форумчанин
 
Регистрация: 05.03.2010
Сообщений: 125
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
не знаю что вы имеете ввиду...
DBLookupComboBox1.KeyValue будет содержать ключ(значение ключевого полян, если вы конечно, поставите), а список будет содержать наименование....
это если я вас правильно понял
ну да а как это все присваивать и запрос писать?
пожалейте новичка
Domanoff вне форума Ответить с цитированием
Старый 20.04.2010, 22:49   #6
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

дайте конструкцию запроса, тогда и скажу...
maLoy*508 вне форума Ответить с цитированием
Старый 21.04.2010, 09:26   #7
Domanoff
Форумчанин
 
Регистрация: 05.03.2010
Сообщений: 125
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
дайте конструкцию запроса, тогда и скажу...
{IBQuery1.SQL.Text:='selekt name,id from avtori

где как вы сказали в DBLookupComboBox.listField нужно сохранить все name. а в DBLookupComboBox.Keyfield все id. чтоб потом при выборе я мог из этого Keyfield брать id, это через цикл,параметры и как вообще???
пожалейте новичка
Domanoff вне форума Ответить с цитированием
Старый 21.04.2010, 10:58   #8
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

помещаем на форму компонент DBLookupComboBox
в объекте инспекторов находим описанные выше свойства
Цитата:
в listosource - нужный датасорс
в listField - нужное поле
в Keyfield - id
и в них указываем нужные поля и т.д.
компилируем, смотрим что получилось и задаем вопрос
maLoy*508 вне форума Ответить с цитированием
Старый 21.04.2010, 11:19   #9
Domanoff
Форумчанин
 
Регистрация: 05.03.2010
Сообщений: 125
По умолчанию

Цитата:
Сообщение от maLoy*508 Посмотреть сообщение
помещаем на форму компонент DBLookupComboBox
в объекте инспекторов находим описанные выше свойства

и в них указываем нужные поля и т.д.
компилируем, смотрим что получилось и задаем вопрос
получилось) вопросы:
1) он странно выпадает этот список, одна строчка, в которой нужно нажимать вверх и вниз чтоб менялось поле, можно как то сделать чтоб весь список полей выпадал(так просто удобнее)?
2) как примерно выглядит процедура с событием выбора нужного поля и сохранения этого id?
пожалейте новичка
Domanoff вне форума Ответить с цитированием
Старый 21.04.2010, 12:07   #10
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

1.) на этот вопрос я не нашел ответа тоже (хотя и не сильно искали, списал это на свою лень и "глюки" делфи)
2.) когда выбираешь определенную запись из списка происходит событие OnCloseUp... в DBLookupComboBox1.KeyValue получаем (код, если указали его)...
далее уже есть разные варианты... можно исполозовать свойства DaraSource и DataField этого же компонента, а можно руками писать...
простой пример
Код:
insert;
FieldByName('id').AsInteger := DBLookupComboBox1.KeyValue;
post;
если не понятно, то пиши

Последний раз редактировалось maLoy*508; 21.04.2010 в 12:10.
maLoy*508 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Управление данными Doublefaced Помощь студентам 3 06.03.2010 15:13
Обмен данными saggy Работа с сетью в Delphi 1 14.02.2010 13:10
ComboBox с числовыми данными ННС Помощь студентам 3 06.04.2009 16:40
непонятки с данными KiSH333 БД в Delphi 5 01.09.2008 08:36
Не могу внести строку из combobox в combobox!? tacer Помощь студентам 1 30.11.2007 19:45