2017-06-22 17 views
1

我用VB 6,因为我的老师向我挑战由VB 6 做出PROGRAMM我在文本框的数据是这样的: the data is multiline and "." is dividing 3 type data, [data a].[data b].[data c] (enter)如何通过字符数据从一个文本框分割在VB中multicoloum和多6

我想将3种类型的数据分成3种颜色,如表格。我知道如何将数据由字符使用这种类型的代码分割:(“” Text1.Text)

一个=分段(0)

和因为我不知道如何使一个表中的VB 6,我把它们分成3个文本框。 但它只是分裂1行。第二行不起作用。 it just spliting the first line. another lines is not splitting :(

这是我的代码:

Dim a As String 
Dim b As String 
Dim c As String 

Private Sub Command1_Click() 
a = Split(Text1.Text, ".")(0) 
b = Split(Text1.Text, ".")(1) 
c = Split(Text1.Text, ".")(2) 
Text2.Text = a 
Text3.Text = b 
Text4.Text = c 

End Sub 

请帮助我。

+0

......是不是你的老师已经是SO成员? – deblocker

+0

@deblocker不,他不是:') –

回答

1

您必须使用listbox代替文本框,然后才能逐行读写。

Private Function GetItemText(i As Integer) As String 
    'Return the text of the item using the index: 
    GetItemText = ListBox1.List(i) 
End Function 
+1

谢谢你的建议:)我用listbox就像你告诉我的,但代码不是这样,因为这不是vb6的代码hehe,但thankyouuuu –

+0

布鲁诺,你能帮我更多?分裂的结果如何不是列表框,而是列表视图?这样的ListView有明杆3(A,B,C) 请帮帮我,thankyouu –

+0

您可以创建一个列表框柱:'ListBox1.ColumnCount = 3 ListBox1.Columnwidths = “100,100,100” ListBox1.AddListItem( “ROW1 COL1” 1,1) ListBox1.AddListItem(“row1 col2”,1,2) ListBox1.AddListItem(“row1 col3”,1,3) ListBox1.AddListItem(“row2 col2”,2,2)' – Rinos

0

首先,您必须拆分线,接下来您必须按每行拆分值。 这应该工作:

Dim i as Long 
Dim sLines() As String 
Dim sValues() As String 
sLines() = Split(Text1.Text, vbCrLf) 
For i = 0 to UBound(slines) 
    If sLines(i) > vbNullString Then ' skip for empty line 
     sValues() = Split(sLines(i), ".") 
     Text2.Text = Text2.Text & sValues(0) & vbCrLf 
     Text3.Text = Text3.Text & sValues(1) & vbCrLf 
     Text4.Text = Text4.Text & sValues(2) & vbCrLf 
    End If 
Next i 

enter image description here

+0

此代码只是把最后的名单分开。所以第一行不显示在结果中。 :( –

+0

查看更新的代码确保所有的文本框设置Multiline = True –

+0

谢谢你这么多它的工作!!! :))) –

相关问题