这是我的代码,我也觉得不可能,但还是不行,帮看一下: Public Sub lvw(lvw As listview, sqlstr As String) Dim rs As ADODB.Recordset Dim i As Integer Dim j As Integer Dim columns As ColumnHeader Dim items As ListItem Set rs = New ADODB.Recordset rs.Open sqlstr, db, adOpenForwardOnly, adLockReadOnly If rs.RecordCount <> 0 Then
For i = 0 To rs.Fields.Count - 1 Set colunms = lvw.ColumnHeaders.Add(, , rs.Fields(i).Name, lvw.Width / rs.Fields.Count - 1) Next For j = 0 To rs.RecordCount - 1 Set items = lvw.ListItems.Add(, , rs(0)) For i = 1 To rs.Fields.Count - 1 items.SubItems(i) = rs.Fields(i).Value Next rs.MoveNext Next End If End SubPrivate Sub Form_Load() Dim sqlstr As String sqlstr = "select partno,partname,attrcode,typecode,unit from epartno" Call lvw(lvw1, sqlstr) End SubPrivate Sub lvw1_DblClick() from1.Text1(0).Text = bomlvw.SelectedItem.Text end Sub
form2 绝对不能被unload
你可以form2.hide
然后text1.text=form2.text2.text
然后 unload form2
Public Sub lvw(lvw As listview, sqlstr As String)
Dim rs As ADODB.Recordset
Dim i As Integer
Dim j As Integer
Dim columns As ColumnHeader
Dim items As ListItem
Set rs = New ADODB.Recordset
rs.Open sqlstr, db, adOpenForwardOnly, adLockReadOnly
If rs.RecordCount <> 0 Then
For i = 0 To rs.Fields.Count - 1
Set colunms = lvw.ColumnHeaders.Add(, , rs.Fields(i).Name, lvw.Width / rs.Fields.Count - 1)
Next
For j = 0 To rs.RecordCount - 1
Set items = lvw.ListItems.Add(, , rs(0))
For i = 1 To rs.Fields.Count - 1
items.SubItems(i) = rs.Fields(i).Value
Next
rs.MoveNext
Next
End If
End SubPrivate Sub Form_Load()
Dim sqlstr As String
sqlstr = "select partno,partname,attrcode,typecode,unit from epartno"
Call lvw(lvw1, sqlstr)
End SubPrivate Sub lvw1_DblClick()
from1.Text1(0).Text = bomlvw.SelectedItem.Text
end Sub
from1.text1(0).text=lvw1.selecteditem.text
真是见鬼?!好像没有那里有问题。