关于datagrid控件在窗体有两个按扭一个增加一个保存如何实现每点一次增加就增加一个空行然后点保存就可以成批的把DATAGRID网格中的数据保 最好是先与一个数据库建立关联,然后就可以实现增加空行和保存的功能。如果你同意我的意见的话,我可以给出源代码,包括增加和保存。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我已经和数据库邦定了。我同意你的意见。请赐教。谢谢! 我用的是ADO方式,源码如下:在使用之前先从工程菜单中引用MSADO15.DLL(全名为)MICROSOFT ACTIVEX DATA OBJECTS 2.5 LIBRARY首先在声明区填写以下内容Public cn As Connection, rs As Recordset, conn As String在Form_Load()中加入以下内容:Set cn = New ConnectionSet rs = New RecordsetIf Right(App.Path, 1) <> "\" Then conn = App.Path & "\"Else conn = App.PathEnd Ifconn = "Provider=MSDASQL.1;Persist Security Info=False;User ID=admin;Extended Properties=DSN=hl(此处换成你的DSN名);DBQ=" & conn & "heli.mdb(此处换成你的数据库名);DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;PWD=heli(数据库密码);Initial Catalog=" & conncn.Open connrs.CursorLocation = adUseClientrs.Open "select * from temp(换成你的数据表名)", conn, adOpenKeyset, adLockPessimisticSet DataGrid1.DataSource = rsDataGrid1.Refreshcn.Close在增加按钮下填写以下内容:rs.closers.open "select * from temp(换成你的数据表名)"rs.addnewrs.fields("id(此处换成你的字段名)")=0(此处置刚添加内容为空)rs.updateSet DataGrid1.DataSource = rsDataGrid1.Refresh在保存按钮下填写以下内容:rs.movefirstDo rs.Fields("单据编号") = Val(Text1) For i = 2 To rs.Fields.Count - 1 rs.Fields(DataGrid1.Columns(i).Caption) = DataGrid1.Columns(i).CellValue(DataGrid1.Book) Next rs.UpdateBatch rs.MoveNextLoop Until rs.EOFSet DataGrid1.DataSource = rsDataGrid1.Refresh这样就可以完成这几项操作。 高手来帮帮我....在线等~~~~~解决 100分急求!!!怎么样用VB实现背包算法的回溯和分支界限法! 窗口缩小问题! 高分咨询使用的心得 Open "LPT1" 的奇怪问题啊!!!!大家快帮帮忙啊! 如何保护WORD? 如何在查询中使符合条件的数据,在网格控件中显示的数据库表的字段名为中文别名 50分求PictureBox控件问题(在线) 窗体拖放到其它程序的工具栏 哪位高手能帮小弟写一个最简单的com组件,并用asp调用?(最简单的那种) 100分!!! 求助! 网络版ACCESS
在使用之前先从工程菜单中引用MSADO15.DLL(全名为)MICROSOFT ACTIVEX DATA OBJECTS 2.5 LIBRARY
首先在声明区填写以下内容
Public cn As Connection, rs As Recordset, conn As String
在Form_Load()中加入以下内容:
Set cn = New Connection
Set rs = New RecordsetIf Right(App.Path, 1) <> "\" Then
conn = App.Path & "\"
Else
conn = App.Path
End Ifconn = "Provider=MSDASQL.1;Persist Security Info=False;User ID=admin;Extended Properties=DSN=hl(此处换成你的DSN名);DBQ=" & conn & "heli.mdb(此处换成你的数据库名);DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;PWD=heli(数据库密码);Initial Catalog=" & conn
cn.Open conn
rs.CursorLocation = adUseClient
rs.Open "select * from temp(换成你的数据表名)", conn, adOpenKeyset, adLockPessimistic
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
cn.Close
在增加按钮下填写以下内容:
rs.close
rs.open "select * from temp(换成你的数据表名)"
rs.addnew
rs.fields("id(此处换成你的字段名)")=0(此处置刚添加内容为空)
rs.update
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
在保存按钮下填写以下内容:
rs.movefirst
Do
rs.Fields("单据编号") = Val(Text1)
For i = 2 To rs.Fields.Count - 1
rs.Fields(DataGrid1.Columns(i).Caption) = DataGrid1.Columns(i).CellValue(DataGrid1.Book)
Next
rs.UpdateBatch
rs.MoveNext
Loop Until rs.EOF
Set DataGrid1.DataSource = rs
DataGrid1.Refresh
这样就可以完成这几项操作。