永发信息网

三个combo下拉列表内容怎样保存为和读取这种文本文件?

答案:3  悬赏:0  手机版
解决时间 2021-03-19 13:47
  • 提问者网友:眉目添风霜
  • 2021-03-19 07:14
vb窗体上有combo1、combo2、combo3。这三个combo的下拉列表条目在窗体退出时保存到一个文本文件abc.txt。这个文本文件中每一行内容分别是三个combo下拉列表的内容,用竖线隔开。格式如:
combo1A|combo2B|combo3C
combo1D|combo2W|combo3X
combo1j|combo2t|combo3p
在重新启动窗体时,要把保存的条目分别读取到各自的combo中。
最佳答案
  • 五星知识达人网友:未来江山和你
  • 2021-03-19 07:34
Private Sub Combo1_Click()
Combo2.Text = Combo2.List(Combo1.ListIndex)
Combo3.Text = Combo3.List(Combo1.ListIndex)
End Sub
Private Sub Form_Load()
Dim a As String, b() As String
Open "c:\abc.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, a
b = Split(a, "|")
Combo1.AddItem b(0)
Combo2.AddItem b(1)
Combo3.AddItem b(2)
Loop
Close
End Sub

Private Sub Form_Unload(Cancel As Integer)
Dim a As String, b(2) As String
Open "c:\abc.txt" For Output As #1
For i = 0 To Combo1.ListCount - 1
Print #1, Combo1.List(i) & "|" & Combo2.List(i) & "|" & Combo3.List(i)
Next
Close
End Sub
已验证,运行正确
全部回答
  • 1楼网友:逃夭
  • 2021-03-19 09:11
  • 2楼网友:由着我着迷
  • 2021-03-19 09:03
Private Sub Form_Load() Dim StrT As String, I1 As Integer, I2 As Integer, I3 As Integer Open App.Path & "\abc.txt" For Input As #1 Do While Not EOF(1) Input #1, StrT I1 = InStr(StrT, "|") I2 = InStr(I1 + 1, StrT, "|") I3 = Len(StrT) Combo1.AddItem Mid(StrT, 7, I1 - 7) Combo2.AddItem Mid(StrT, I1 + 7, I2 - I1 - 7) Combo3.AddItem Mid(StrT, I2 + 7, I3 - 7) Loop Close #1 End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Dim I As Integer Open App.Path & "\abc.txt" For Output As #1 For I = 0 To Combo1.ListCount - 1 Print #1, "Combo1" & Combo1.List(I) & "|Combo2" & Combo2.List(I) & "|Combo3" & Combo3.List(I) Next I Close #1 End Sub
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯