| 发表于:2007-05-26 11:47:38 楼主 |
add11窗体添加完数据后,datashow中的数据不能更新,必须要把程序全部的关闭后,再次打开才能显示出刚刚的数据,为什么会这样应该怎么解决?我刚刚开始学vb,有很多不懂的地方,还请各位多多帮忙了。 datashow: 。 private sub loadcontrol(lpage as long) if lcurrentpage = 1 then cmdprevious.enabled = false first.enabled = false end if if lcurrentpage < adoprimaryrs.pagecount and lcurrentpage <> 1 then cmdprevious.enabled = true first.enabled = true cmdnext.enabled = true last.enabled = true adoprimaryrs.absolutepage = lcurrentpage end if if lcurrentpage = adoprimaryrs.pagecount then lpage = adoprimaryrs.absolutepage adoprimaryrs.absolutepage = adoprimaryrs.pagecount cmdnext.enabled = false last.enabled = false lpage = adoprimaryrs.pagecount end if '定义另一个记录集 dim objrs as new adodb.recordset '添加字段名称 for lcount = 0 to adoprimaryrs.fields.count - 1 objrs.fields.append adoprimaryrs.fields(lcount).name, advarchar, adoprimaryrs.fields(lcount).definedsize next '打开记录集 objrs.open '将指定记录数循环添加到objrs中 for lcount = 1 to npagesize if not adoprimaryrs.eof then objrs.addnew objrs!编号 = adoprimaryrs!编号 & " " objrs!姓名 = adoprimaryrs!姓名 & " " objrs!密码 = adoprimaryrs!密码 & " " objrs!经验值 = adoprimaryrs!经验值 & " " adoprimaryrs.movenext else adoprimaryrs.movefirst exit for end if next set datagrid1.datasource = objrs add11: dim conn as connection dim rs as recordset dim sql as string dim db as string private sub command1_click() rs.addnew rs!姓名 = t1.text rs!密码 = t2.text rs!经验值 = t3.text rs.update load datashow datashow.refresh datashow.show t = msgbox( "提交成功! ", , "标题 ") end sub private sub form_load() set conn = new connection set rs = new recordset db = app.path + "\net1.mdb " sql = "select * from ask " conn.open "provider=microsoft.jet.oledb.4.0;data source= " & db & "; " rs.open sql, conn, 1, 3 end sub |
|
|
|
|