在文本框中接受一个名称,当有人单击“打印”按钮时将其打印

时间:2018-12-05 06:55:05

标签: vb6

我在VB中有一个TextBox和一个Command Button。我想在单击命令按钮时打印字符串。 我正在使用以下代码,请告诉我我做错了什么:-

<a>

当我在文本框中输入一个字符串并单击命令按钮时,结果是:

Dim name As String 
name = Val(Text1.Text) 
MsgBox ("Welcome" & Str(name))

3 个答案:

答案 0 :(得分:0)

val()周围省略Text1.Textval()返回直到无法识别为字符串中使用的数字的第一个符号的数字。请参见documentation。我猜您在TextField的字符串中使用了0或根本没有数字,两者都将返回0

此外,由于您的String name已经是String,因此不必将String强制转换为Str(),因此也可以省去startDate

答案 1 :(得分:0)

val函数返回其参数的数字表示形式,否则返回“ 0”。这些天来很难找到VB6的官方文档,但您可能需要检查:https://en.wikibooks.org/wiki/Visual_Basic/VB6_Command_Reference#Val

因此,在您的示例中,如果您在Text1文本框控件中输入任何数字,则将在消息框中看到它。如果输入任何文本,则将像现在一样显示“ Welcome 0”。因此,您必须从代码中删除val函数,例如:

Dim name As String 
name = Text1.Text
MsgBox ("Welcome " & name)

甚至可以简化为:

MsgBox("Welcome " & Text1.Text)

答案 2 :(得分:-1)

因此,您声明了一个字符串变量name,该字符串要用Text1框中的文本填充。因此,您需要保留val(...)部分。 其次,由于name已经表示一个字符串,因此请在消息框中省略str

name = Text1.Text
MsgBox ("Welcome " & name)