当我从组合框中选择值时,相关值应出现在文本框
中ComboBox代码。
cmd.CommandText = "select distinct PERSONID from T_PERSON"
Set rs = cmd.Execute
While Not rs.EOF
If Not IsNull(rs("PersonID")) Then
txtno.AddItem rs("PersonID")
End If
rs.MoveNext
Wend
在comboBox中显示ID列表,当我选择特定的人ID时,Name应显示在与personid相关的文本框中
文本框
cmd.CommandText = "select distinct Name from T_Person where personid = '" & txtno & " '"
Set rs = cmd.Execute
While Not rs.EOF
If Not IsNull(rs("Name")) Then
txtName.Text = rs("Name")
rs.MoveNext
End If
Wend
我将上面的代码放在Form_Load事件中,没有显示在文本框中。
我的代码有什么问题。
需要VB6代码帮助
答案 0 :(得分:1)
您需要组合框的click事件中的第二个代码块。
修改
在此行中您的代码中似乎还有另外几个问题:
cmd.CommandText = "select distinct Name from T_Person where personid = '" & txtno & " '"
2个问题:
之后,您的查询中有一个额外的空格
您应该将该行更改为:
cmd.CommandText = "select distinct Name from T_Person where personid = '" & txtno.SelectedItem.Text & "'"
答案 1 :(得分:1)
为什么不让组合框显示名称并将personID作为项目数据保存?
cmd.CommandText = "select distinct PERSONID, Name from T_PERSON WHERE PersonID IS NOT NULL"
Set rs = cmd.Execute
While Not rs.EOF
combo.AddItem rs("Name").value
combo.ItemData(combo.NewIndex) = rs("PERSONID").value
rs.MoveNext
Wend
然后,如果你需要所选名称的PersonID,你可以抓住combo.ItemData(combo.ListIndex)。