связать 2 комбобокса?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
skulida
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 28.06.2003 (Сб) 12:16
Откуда: Санкт-Петербург

связать 2 комбобокса?

Сообщение skulida » 03.11.2004 (Ср) 18:03

скажите, как можно связать 2 комбобокса на форме?
т.е. кликая значение на одном, на другом выбирается соответствующее значение и наоборот, выбирая кликая на втором, выбирается значение на первом.
комбобоксы заполняются из базы:

Set cn = New ADODB.Connection
cn.Open "DSN=BASE"
Set rs = cn.Execute("select id_agent, agent_name from agent")
While Not rs.EOF
Combo1.AddItem rs.Fields("id_agent")
Combo1.ItemData(Combo1.NewIndex) = rs.Fields("id_agent")
Combo2.AddItem rs.Fields("agent_name")
Combo2.ItemData(Combo2.NewIndex) = rs.Fields("id_agent")
rs.MoveNext
Wend

далее что-то типа:
например...
Private Sub Combo2_Click()
If Combo2.ListIndex = -1 Then Exit Sub
Combo1 = Combo2.ItemData(Combo2.ListIndex)
End Sub

как сделать чтобы тоже самое было и по первому комбобоксу??

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Сообщение GM » 04.11.2004 (Чт) 8:26

Вот так:
Код: Выделить всё
Private Sub Combo2_Click()
Combo1.ListIndex = Combo1.ListIndex
End Sub
Private Sub Combo1_Click()
Combo2.ListIndex = Combo2.ListIndex
End Sub
الفيجوال بيسك الرابح

skulida
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 28.06.2003 (Сб) 12:16
Откуда: Санкт-Петербург

Сообщение skulida » 05.11.2004 (Пт) 20:54

:wink: ...неа так не получится...
по идее вот так:

Код: Выделить всё
Private Sub Combo1_Click()
Combo2 = Combo2.ItemData(Combo1.ListIndex)
End Sub


т.е. взять значение с индексом (который выбран в combo1)...
скажите в чем я не прав??

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 06.11.2004 (Сб) 0:04

Код: Выделить всё
Sub Combo1_Click()
Combo2.ListIndex = Combo1.ListIndex
End Sub

Sub Combo2_Click()
Combo1.ListIndex = Combo2.ListIndex
End Sub
Перефразированный вариант GM (он ошибся в присваивании) не подойдет?


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList  
cron