
vb text数组保存记录问题
vb窗体上有3个text数组,分别为text1(i),text2(j),text3(m),每次运行完毕后,希望能保存数据,下次窗体启动时,显示上次输入的数据,请高手啦帮忙...
vb窗体上有3个text数组,分别为text1(i),text2(j),text3(m),每次运行完毕后,希望能保存数据,下次窗体启动时,显示上次输入的数据,请高手啦帮忙想想代码,要能运行的,不是思路。谢谢
展开
3个回答
展开全部
试下我的代码
Private Sub Command1_Click()
SaveIt
End Sub
Private Sub Command2_Click()
LoadIt
End Sub
Private Sub SaveIt()
Dim strData1 As String, strData2 As String, strData3 As String
Dim i As Long
strData1 = ""
strData2 = ""
strData3 = ""
For i = 0 To Text1.Count - 1
strData1 = strData1 & Text1(i).Text & "|"
Next
strData1 = Left(strData1, Len(strData1) - 1)
For i = 0 To Text2.Count - 1
strData2 = strData2 & Text2(i).Text & "|"
Next
strData2 = Left(strData2, Len(strData2) - 1)
For i = 0 To Text3.Count - 1
strData3 = strData3 & Text3(i).Text & "|"
Next
strData3 = Left(strData3, Len(strData3) - 1)
SaveSetting App.EXEName, "setting", "strData1", strData1
SaveSetting App.EXEName, "setting", "strData2", strData2
SaveSetting App.EXEName, "setting", "strData3", strData3
End Sub
Private Sub LoadIt()
Dim strData1 As String, strData2 As String, strData3 As String
Dim i As Long, TmpArrary
strData1 = GetSetting(App.EXEName, "setting", "strData1", "")
strData2 = GetSetting(App.EXEName, "setting", "strData2", "")
strData3 = GetSetting(App.EXEName, "setting", "strData3", "")
If strData1 <> "" Then
TmpArrary = Split(strData1, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text1(i).Text = TmpArrary(i)
Next
End If
End If
If strData2 <> "" Then
TmpArrary = Split(strData2, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text2(i).Text = TmpArrary(i)
Next
End If
End If
If strData3 <> "" Then
TmpArrary = Split(strData3, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text3(i).Text = TmpArrary(i)
Next
End If
End If
End Sub
Private Sub Form_Load()
LoadIt
End Sub
Private Sub Command1_Click()
SaveIt
End Sub
Private Sub Command2_Click()
LoadIt
End Sub
Private Sub SaveIt()
Dim strData1 As String, strData2 As String, strData3 As String
Dim i As Long
strData1 = ""
strData2 = ""
strData3 = ""
For i = 0 To Text1.Count - 1
strData1 = strData1 & Text1(i).Text & "|"
Next
strData1 = Left(strData1, Len(strData1) - 1)
For i = 0 To Text2.Count - 1
strData2 = strData2 & Text2(i).Text & "|"
Next
strData2 = Left(strData2, Len(strData2) - 1)
For i = 0 To Text3.Count - 1
strData3 = strData3 & Text3(i).Text & "|"
Next
strData3 = Left(strData3, Len(strData3) - 1)
SaveSetting App.EXEName, "setting", "strData1", strData1
SaveSetting App.EXEName, "setting", "strData2", strData2
SaveSetting App.EXEName, "setting", "strData3", strData3
End Sub
Private Sub LoadIt()
Dim strData1 As String, strData2 As String, strData3 As String
Dim i As Long, TmpArrary
strData1 = GetSetting(App.EXEName, "setting", "strData1", "")
strData2 = GetSetting(App.EXEName, "setting", "strData2", "")
strData3 = GetSetting(App.EXEName, "setting", "strData3", "")
If strData1 <> "" Then
TmpArrary = Split(strData1, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text1(i).Text = TmpArrary(i)
Next
End If
End If
If strData2 <> "" Then
TmpArrary = Split(strData2, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text2(i).Text = TmpArrary(i)
Next
End If
End If
If strData3 <> "" Then
TmpArrary = Split(strData3, "|")
If UBound(TmpArrary) >= 0 Then
For i = 0 To UBound(TmpArrary)
Text3(i).Text = TmpArrary(i)
Next
End If
End If
End Sub
Private Sub Form_Load()
LoadIt
End Sub
展开全部
在窗体的unload事件中 加上代码,把text的数据保存到表1中
在打开窗体时,就可以把表1中的数据显示到窗体的text上。
//模块中加入声明
Public CN As New ADODB.Connection
Public rs As New ADODB.Recordset
//窗体的unload事件 中的代码
Private Sub Form_Unload(Cancel As Integer) //关闭窗体时,保存text的内容
Dim ST As String
ST = "select * from 表1 "
rs.Open ST, CN, adOpenKeyset, adLockOptimistic
If Not rs.EOF Then
rs.MoveFirst
End If
rs("text0") = Form1.Text(0)
rs("text1") = Form1.Text(1)
rs("text2") = Form1.Text(2)
update
rs.close
End Sub
//窗体Load事件中加入下面代码
Private Sub Form_Load() //打开窗体时,把表中的内容显示窗体上的text
CN.Open"provider=microsoft.jet.oledb.4.0;data source=" & App.Path &"\数据库名.mdb"
Dim ST As String
ST = "select * from 表1 "
rs.Open ST, CN, adOpenKeyset, adLockOptimistic
If Not rs.EOF Then
rs.MoveFirst
End If
Form1.Text(0)= rs("text0")
Form1.Text(1)= rs("text1")
Form1.Text(2)= rs("text2")
rs.close
end sub
在打开窗体时,就可以把表1中的数据显示到窗体的text上。
//模块中加入声明
Public CN As New ADODB.Connection
Public rs As New ADODB.Recordset
//窗体的unload事件 中的代码
Private Sub Form_Unload(Cancel As Integer) //关闭窗体时,保存text的内容
Dim ST As String
ST = "select * from 表1 "
rs.Open ST, CN, adOpenKeyset, adLockOptimistic
If Not rs.EOF Then
rs.MoveFirst
End If
rs("text0") = Form1.Text(0)
rs("text1") = Form1.Text(1)
rs("text2") = Form1.Text(2)
update
rs.close
End Sub
//窗体Load事件中加入下面代码
Private Sub Form_Load() //打开窗体时,把表中的内容显示窗体上的text
CN.Open"provider=microsoft.jet.oledb.4.0;data source=" & App.Path &"\数据库名.mdb"
Dim ST As String
ST = "select * from 表1 "
rs.Open ST, CN, adOpenKeyset, adLockOptimistic
If Not rs.EOF Then
rs.MoveFirst
End If
Form1.Text(0)= rs("text0")
Form1.Text(1)= rs("text1")
Form1.Text(2)= rs("text2")
rs.close
end sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就3个文本框没必要用数据库,用write语句写到文件中就好了,读出用inputline语句,代码就不写了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询