Примите имя в текстовом поле, распечатайте его, когда кто-то нажмет кнопку печати - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть TextBox в VB и командная кнопка.Я хочу напечатать строку после нажатия на кнопку команды.Я использую следующий код, пожалуйста, скажите, что я делаю неправильно: -

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

Когда я ввожу строку в текстовое поле и нажимаю на кнопку команды, результат:

Welcome 0

Ответы [ 3 ]

0 голосов
/ 05 декабря 2018

Итак, вы объявили строку varaible name, которую хотите заполнить текстом из поля Text1.Так что вам нужно сэкономить часть val(...).Во-вторых, поскольку name уже представляет строку, пропустите str в окне сообщения:

name = Text1.Text
MsgBox ("Welcome " & name)
0 голосов
/ 10 декабря 2018

Функция val возвращает числовое представление своего аргумента, в противном случае возвращает «0».В наши дни довольно сложно найти официальную документацию по VB6, но вы можете проверить: https://en.wikibooks.org/wiki/Visual_Basic/VB6_Command_Reference#Val

Итак, в вашем примере, если вы введете какое-либо число в элементе управления Text1 textbox, выувидеть это в окне сообщения.Если вы введете какой-либо текст, вы получите «Добро пожаловать 0», как и сейчас.Поэтому вы должны удалить функцию val из своего кода, например:

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

, возможно, даже упростив ее до:

MsgBox("Welcome " & Text1.Text)
0 голосов
/ 05 декабря 2018

Не указывайте val() вокруг вашего Text1.Text, val() возвращает числа вплоть до первого символа, который он не может распознать как число, используемое в строке.См. документацию .Я предполагаю, что вы использовали 0 в вашей строке в TextField или вообще не использовали ни одного числа, оба возвращали бы 0.

. Кроме того, нет необходимости приводить ваш String name к String, так какэто уже String, поэтому вы также можете опустить Str().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...