Как использовать \n новую строку в VB msgbox() ...?
Какая альтернатива \n (для новой строки) в MsgBox() VB.NET?
18 ответов
- для VB:
vbCrLf
или жеvbNewLine
- для VB.NET:
Environment.NewLine
или жеvbCrLf
или жеConstants.vbCrLf
Информация о новой строке VB.NET: http://msdn.microsoft.com/en-us/library/system.environment.newline.aspx
Информация для Environment.NewLine
пришли от Cody Gray и Jens
Попробуйте использовать vbcrlf
для новой строки
msgbox "This is how" & vbcrlf & "to get a new line"
Это последовательности символов для создания новой строки:
vbCr
возврат каретки (возврат к началу строки),vbLf
перевод строки (перейти к следующей строке)vbCrLf
возврат каретки / перевод строки (аналогично нажатию Enter)
я предпочитаю vbNewLine
как это не зависит от системы (vbCrLf
может не быть настоящей новой строкой в некоторых системах)
Альтернативой Environment.NewLine является использование:
Regex.Unescape("\n\tHello World\n")
из System.Text.RegularExpressions
Это позволяет вам экранировать текст без конкатенации строк, как вы можете в C#, C, Java
Вы можете использовать Environment.NewLine ИЛИ vbCrLF ИЛИ vbNewLine
MsgBox($"Hi!{Environment.NewLine}I'M HERE")
Используйте команду "vbNewLine"
пример
Hello & vbNewLine & "World"
будет отображаться как Hello на одной линии и World на другой
не забудьте установить для свойства Multiline значение true в текстовом поле
Module MyHelpers
<Extension()>
Public Function UnEscape(ByVal aString As String) As String
Return Regex.Unescape(aString)
End Function
End Module
Использование:
console.writeline("Ciao!\n".unEscape)
Со своей стороны я создал подпрограмму MyMsgBox, заменив \n в приглашении ControlChars.NewLine
msgbox "This is the first line" & vbcrlf & "and this is the second line"
или в.NET msgbox "This is the first line" & Environment.NewLine & "and this is the second line"
Вы можете использовать символ возврата каретки (Chr(13)), символ перевода строки (Chr(10)) также как
MsgBox "Message Name: " & objSymbol1.Name & Chr(13) & "Value of BIT-1: " & (myMessage1.Data(1)) & Chr(13) & "MessageCount: " & ReceiveMessages.Count
Многое из вышеперечисленного не работает для меня. Что в итоге получилось
Chr(13)
Эта работа для меня:MessageBox.Show("YourString" & vbcrlf & "YourNewLineString")
Окно сообщения должно заканчиваться текстом, а не переменной
msgbox("ваш текст здесь" & Environment.NewLine & "больше текста") - самый простой способ. нет смысла делать ваш код сложнее или сложнее, чем нужно...