|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как связать два DBComboboxa?
Здравствуйте, помогите пожалуйста начинающему программисту! У меня на форме находятся два DBComboboxa: DBCombobox1 - отображает список шахт, DBCombobox2 - отображает список точек отбора проб ( т.е. местоположение в шахте). Необходимо, чтобы при выборе конкретной шахты из DBCombobox1, в DBCombobox2 появлялся список точек проб для этой шахты. Вроде кажется что легко, а никак не могу реализовать! База данных InterBase, состоит из 4х таблиц: таблица шахт, таблица точек отбора(замера) проб, таблица проб и главная таблица. Код заполнения DBComboboxов:
Код:
procedure TFormMain.FormActivate(Sender: TObject); begin try DataModule3.IBDataBase1.Connected:=true; except Showmessage('Нет базы'); end; if DataModule3.IBDataBase1.Connected then begin DataModule3.IBDataSet2.Active:=False; DataModule3.IBDataSet2.SelectSQL.Text:='select * from TCHK_PROBA'; DataModule3.IBDataSet2.Active:=True; while not DataModule3.IBDataSet2.Eof do begin DBComboBox1.Items.Add(DataModule3.IBDataSet2.FieldByName('NAME').AsString); DataModule3.IBDataSet2.Next; end; DataModule3.IBDataSet1.Active:=False; DataModule3.IBDataSet1.SelectSQL.Text:='select * from SHAXTA'; DataModule3.IBDataSet1.Active:=True; while not DataModule3.IBDataSet1.Eof do begin DBComboBox2.Items.Add(DataModule3.IBDataSet1.FieldByName('NAME').AsString); DataModule3.IBDataSet1.Next; end; end; end; Последний раз редактировалось Admin, 31.05.2009 в 16:25. |
#2
|
||||
|
||||
1.Лично я делал так:
Код:
procedure cmbBox1Enter(Sender:TObject); begin uQuery.Close; uQuery.SQL.Text:='SELECT n_shaxt FROM shaxti'; uQuery.Open; end; procedure cmbBox2Enter(Sender:TObject); begin stQuery1.Close; stQuery1.SQL.Text:='SELECT to_shaxt FROM tchk_shaxt WHERE n_shaxt = "'+cmbBox1+'" GROUP BY to_shaxt'; stQuery1.Open; end; Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#3
|
|||
|
|||
Спасибо большое за помощь! Неожидала, что кто-то откликнется
|