我在一个text控件的bookcode_KeyDown事件调用(用回车键调用)一个函数insertdata来添加一个记录到selltem表上:Private Sub Form_Load() '打开窗体就调用ShowTitle,ShowData函数
ShowTitle
ShowDataEnd Subinsertdata的代码是:
Private Sub insertdata()
Dim bookcode2, bookname2 As String
Dim bookprice2, sellprice2, inprice2 As Integer
txtSQL = "select bookcode,bookname,bigclass,bookprice,sellprice,hits,stock,inprice from bookinfo where bookcode='" & Trim(bookcode.Text) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If Not mrc.EOF Then
bookcode2 = mrc.Fields(0)
bookname2 = mrc.Fields(1)
bookprice2 = mrc.Fields(3)
sellprice2 = mrc.Fields(4)
inprice2 = mrc.Fields(7)
mrc.Close
'往销售临时表添加记录
txtSQL = "select * from selltem"
Set mrc = ExecuteSQL(txtSQL, MsgText)
mrc.AddNew
mrc.Fields(1) = bookcode2
mrc.Fields(2) = bookname2
mrc.Fields(3) = bookprice2
mrc.Fields(4) = sellprice2
mrc.Fields(5) = inprice2
mrc.Update
mrc.Close
Else
MsgBox "该书还没有入库!", vbOKOnly + vbExclamation, "警告"
End If
ShowData '调用ShowData函数
bookcode.Text = ""
End Sub其中ShowData函数是:
Private Sub ShowData()
Dim i As Integer
txtSQL = "select bookcode,bookname,bookprice,sellprice from selltem order by id desc"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 1 To mrc.Fields.Count
.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1)
Next
mrc.MoveNext
Loop
End With
mrc.Close
bookcode.Text = ""
End Sub这样可以把记录成功添加到表selltem里面,不过在显示数据方面就出现了问题,
情况如下:
1.除了刚添加到表里面的记录不能显示外,其他记录都能在控件msgList显示.
2.当再按一下回车键之后,就弹出MsgBox窗口,确定之后,刚添到表的那个记录才显示出来!
3.重新打开窗体,运行Form_Load(),刚添到表的那个记录页可以显示出来!问题就是,为什么数据不能在控件msgList同步更新!想了一整天了,还是想不出来,所以来这找高手了,请大家指导指导!!!
ShowTitle
ShowDataEnd Subinsertdata的代码是:
Private Sub insertdata()
Dim bookcode2, bookname2 As String
Dim bookprice2, sellprice2, inprice2 As Integer
txtSQL = "select bookcode,bookname,bigclass,bookprice,sellprice,hits,stock,inprice from bookinfo where bookcode='" & Trim(bookcode.Text) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If Not mrc.EOF Then
bookcode2 = mrc.Fields(0)
bookname2 = mrc.Fields(1)
bookprice2 = mrc.Fields(3)
sellprice2 = mrc.Fields(4)
inprice2 = mrc.Fields(7)
mrc.Close
'往销售临时表添加记录
txtSQL = "select * from selltem"
Set mrc = ExecuteSQL(txtSQL, MsgText)
mrc.AddNew
mrc.Fields(1) = bookcode2
mrc.Fields(2) = bookname2
mrc.Fields(3) = bookprice2
mrc.Fields(4) = sellprice2
mrc.Fields(5) = inprice2
mrc.Update
mrc.Close
Else
MsgBox "该书还没有入库!", vbOKOnly + vbExclamation, "警告"
End If
ShowData '调用ShowData函数
bookcode.Text = ""
End Sub其中ShowData函数是:
Private Sub ShowData()
Dim i As Integer
txtSQL = "select bookcode,bookname,bookprice,sellprice from selltem order by id desc"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With msgList
.Rows = 1
Do While Not mrc.EOF
.Rows = .Rows + 1
For i = 1 To mrc.Fields.Count
.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1)
Next
mrc.MoveNext
Loop
End With
mrc.Close
bookcode.Text = ""
End Sub这样可以把记录成功添加到表selltem里面,不过在显示数据方面就出现了问题,
情况如下:
1.除了刚添加到表里面的记录不能显示外,其他记录都能在控件msgList显示.
2.当再按一下回车键之后,就弹出MsgBox窗口,确定之后,刚添到表的那个记录才显示出来!
3.重新打开窗体,运行Form_Load(),刚添到表的那个记录页可以显示出来!问题就是,为什么数据不能在控件msgList同步更新!想了一整天了,还是想不出来,所以来这找高手了,请大家指导指导!!!
.Rows = .Rows + 1
For i = 1 To mrc.Fields.Count
.TextMatrix(.Rows - 1, i) = mrc.Fields(i - 1)
Next
mrc.MoveNext
Loop
這個地方有問題噢我懶得看了,你把數據庫導 access中,偶幫你看看[email protected]
bookcode2 = mrc.Fields(0)
bookname2 = mrc.Fields(1)
bookprice2 = mrc.Fields(3)
sellprice2 = mrc.Fields(4)
inprice2 = mrc.Fields(7)
mrc.Close
你这个有问题啊,不懂.