如何检测文本框字符串中的行尾字符(VB6)

时间:2013-04-22 17:00:12

标签: string vb6 character line letter

我遇到VisualBasic6的问题。

我有3个文本框和2个命令按钮。

我想在检查第一个文本框时检测VbCrLf,逐个字母然后在第二个文本框中写入另一个文本框:101 另一个函数检查第二个文本框,如果找到101,则在第三个文本框中创建一个新行(vbcrlf)。

命令中的

For i = 1 to len(text1.text)
   if Mid(txtD.Text, i, 1) = vbcrlf then
      text2.text = 101
   endif
next
在Command2中

if text2.text = 101 then
  text3.text = text3.text & vbcrlf
endif

但是当我检查Vbcrlf时,似乎该字符不是换行符,而text2.text没有填充101

我也试过VbNewLine,但也有同样的问题!

谢谢你的朋友们!

1 个答案:

答案 0 :(得分:5)

您需要准确检查新行分隔符的内容。我见过vbcr,vblf,& vbcrlf。 VbNewLine与vbcrlf相同。

此外,即使你的字符串中有vbcrlf,你的测试仍然会失败。 vbcrlf是两个字符。你一次只测试一个角色。

更好的测试是InStr()函数。这是一个快速测试,以查看较小的字符串是否在较大的字符串中的任何位置。所以,你的测试看起来像这样:

If InStr(txtD.Text, vbcr) or InStr(txtD.Text, vblf) then
  text2.text = 101
End If