Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
8 / 8 / 2
Регистрация: 09.02.2014
Сообщений: 124

Строка a и b в Label1 пишутся одна за другой без перерыва. Как сделать перерыв между строками a и b?

22.02.2014, 16:31. Показов 1660. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Visual Basic
1
2
3
 Dim a as String
        Dim b as String
     Label1 = a & b
Строка a и b в Label1 пишутся одна за другой без перерыва. Как сделать перерыв между строками a и b?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.02.2014, 16:31
Ответы с готовыми решениями:

Переместить значения ячеек на другой лист без пробелов между строками
Необходимо поставить их друг за другом с помощью функций, а не макросов. Помогите пожалуйста в решении данной задачи.

Одна строка старше другой - Как называется функция?
Одна строка старше другой в алфавитном порядке - Как называется функция? Добавлено через 23 минуты Delphi 7

Дана строка. В ней есть одна открывающая и одна закрывающая скобка. Вывести на экран все символы, расположенные между ними
Дана строка.В ней есть одна открывающаяся скобка и одна закрывающаяся скобка.Вывести на экран все символы,расположенные между ними. ...

14
 Аватар для Danila_Bagrov
-12 / 31 / 4
Регистрация: 22.09.2012
Сообщений: 116
22.02.2014, 16:40
Лучший ответ Сообщение было отмечено yurimo100 как решение

Решение

Visual Basic
1
2
3
Dim a as String
Dim b as String
Label1.caption = a & " " & b
или я не правильно понял? на новую строчку будет
Visual Basic
1
2
3
Dim a as String
Dim b as String
Label1.caption = a + vbCrLf  + b
1
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
22.02.2014, 16:50
Visual Basic
1
2
3
4
5
Private Sub Form_Load()
    Dim a$, b$
    a = "Подчеркивание": b = " пример"
    Label1 = "&" & a & b
End Sub
'
Амперсант внутри строки,
обычно используется в построении меню, чтоб вызывать команды
по клавише [Alt] далее => автоматически подчеркивается символ, который вызовет команду меню
'
Примеры:
  • "&Файл" ...=результат Файл
  • "П&равка" ...=результат Правка

также Амперсант спользуется как правильное объединение строк ... "1" & "2" = 12
1
8 / 8 / 2
Регистрация: 09.02.2014
Сообщений: 124
22.02.2014, 17:10  [ТС]
Danila_Bagrov,
Большое спасибо.
Все в порядке.
Использовал верхний вариант.
0
 Аватар для Danila_Bagrov
-12 / 31 / 4
Регистрация: 22.09.2012
Сообщений: 116
22.02.2014, 17:12
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
Амперсант внутри строки,
обычно используется в построении меню, чтоб вызывать команды
по клавише [Alt] далее => автоматически подчеркивается символ, который вызовет команду меню
'
Примеры:
"&Файл" ...=результат Файл
"П&равка" ...=результат Правка
также Амперсант спользуется как правильное объединение строк ... "1" & "2" = 12
в барсике по барабану чем строку объединять, если это не числа, то и & и + сгодится. другое дело, что если будут a и b числовыми, то итог будет в случае с "&" (ab), а в случае с "+" будет (a+b)
1
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
22.02.2014, 17:42
Это ваше дело, можете объеденять плюсами
только потом не жалуйтесь на непонятные ошибки в коде
например X="1" + "2" результат ... X=3 /// X="1" & "2" результат ... X=12

Добавлено через 10 минут
к тому-же, + и & по разному обрабатываются, + для объединения строк работает медленнее, так как предназначен для работы с числами

Добавлено через 9 минут
Объединение строк

В Visual Basic для работы со строками можно использовать только один оператор — оператор объединения. С помощью данного оператора можно объединять несколько строк в одну. Этот оператор обозначается символом амперсанда (&).

Замечание

В предыдущих версиях Visual Basic для объединения строк использовался символ "плюс" (+). В Visual Basic 6 этот оператор также поддерживается.

Например, объединение строк удобно использовать при формировании полного адреса, если известен индекс, город и улица. В следующем примере показан результат объединения фамилии, имени и отчества в окне Immediate:

sLastName = "Иванов "

sFirstName = "Иван "

sSecondName = "Иванович"

sName = sLastName & sFirstName & sSecondName

Print sName ' Возвращает "Иванов Иван Иванович"
'
' ✰ ✰ ✰
'
из учебника ...

Особенности использования переменных типа Variant

Переменную типа variant можно использовать для хранения всех типов данных и выполнять операции, не заботясь о типе данных, в них содержащихся. Необходимо только помнить о двух исключениях. Во-первых, выполнять арифметические операции или функции над переменной типа variant можно только в том случае, если она содержит числовое значение. Во-вторых, конкатенацию строк следует осуществлять с помощью оператора "&" вместо оператора "+".
1
 Аватар для OldFedor
7486 / 4150 / 474
Регистрация: 25.08.2012
Сообщений: 11,530
Записей в блоге: 11
22.02.2014, 17:47
Цитата Сообщение от yurimo100 Посмотреть сообщение
Label1 = a & b
В Вашем случае это конкатенация - присоединение символов второй строки к концу первой.
Похоже на операцию "+".
Подробнее - http://www.on-line-teaching.com/vba/lsn0104.html
1
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
22.02.2014, 17:54
OldFedor, [TC] уже наверное понял
Цитата Сообщение от Danila_Bagrov Посмотреть сообщение
в барсике по барабану чем строку объединять
я выложил выдержки из учебников, чтоб как-то избежать
расспространение лженауки и ереси
а то что он его ответ отметил лучшим, наводит на мысль, что ему нужно было
реализовать многострочность для лейбла, он неправильно назвал эту тему
1
 Аватар для Danila_Bagrov
-12 / 31 / 4
Регистрация: 22.09.2012
Сообщений: 116
22.02.2014, 17:55
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
Добавлено через 10 минут
к тому-же, + и & по разному обрабатываются, + для объединения строк работает медленнее, так как предназначен для работы с числами
глупо писать приложение на вб и думать о скорости (не в оскорбление)
ваши аргументы очень аргументные, но ведь, и я могу придумать кучу ситуаций когда я окажусь прав.
а этот коменнтарий был для того, что бы человек не зацикливался на этом и не путался, а вы выливаете на него кучу ненужной информации.
Цитата Сообщение от Danila_Bagrov Посмотреть сообщение
в барсике по барабану чем строку объединять, если это не числа, то и & и + сгодится. другое дело, что если будут a и b числовыми, то итог будет в случае с "&" (ab), а в случае с "+" будет (a+b)
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
22.02.2014, 18:01
Цитата Сообщение от Danila_Bagrov Посмотреть сообщение
в барсике по барабану чем строку объединять, если это не числа, то и & и + сгодится. другое дело, что если будут a и b числовыми, то итог будет в случае с "&" (ab), а в случае с "+" будет (a+b)
это ерись
0
 Аватар для Danila_Bagrov
-12 / 31 / 4
Регистрация: 22.09.2012
Сообщений: 116
22.02.2014, 18:02
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
это ерись
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
22.02.2014, 19:19
Цитата Сообщение от Danila_Bagrov Посмотреть сообщение
глупо писать приложение на вб и думать о скорости (не в оскорбление)
Очень не согласен.
Если человеку хоть раз понадобится писать неучебную программу,
которая потребует хотя бы сколь угодно приемлемого времени для получения результатов рассчетов (я уже не говорю о VBA),
думать о косяках в своем коде и оптимизации может оказаться уже поздно.
Причиной окажется:
1) незнание, что исправлять.
2) поздно взялся за ум - кода написал слишком много, чтобы все это править.
Изучать другой язык ради того, чтобы выполнить 1 задачу, которая дает неприемлемый результат по скорости из-за нубства при изучении основ... идиотизм.

Собственно за это Вам и поставил минус.
2
8 / 8 / 2
Регистрация: 09.02.2014
Сообщений: 124
23.02.2014, 13:40  [ТС]
FelixMacintosh,
Я назвал его ответ лучшим, чисто субъективно, он был коротким и полностью удовлетворил меня.
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
23.02.2014, 13:45
Цитата Сообщение от yurimo100 Посмотреть сообщение
он был коротким и полностью удовлетворил меня.
рад за вас
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
23.02.2014, 21:12
Цитата Сообщение от FelixMacintosh Посмотреть сообщение
Амперсант внутри строки,
обычно используется в построении меню, чтоб вызывать команды
по клавише [Alt] далее => автоматически подчеркивается символ, который вызовет команду меню
'
Примеры: "&Файл" ...=результат Файл "П&равка" ...=результат Правка
Позвольте "вклиниться" с оффтопом.
Хочу дополнить.

Тот же принцип заложен также в контекстное меню файлов/каталогов.
Вот, например, как выглядит это меню у меня для файла .inf
Кликните здесь для просмотра всего текста
&Открыть
&Установить
Пе&чать
&Изменить
&Edit with PrimalScript
AkelPad
Проверить на &вирусы
Посмотреть репутацию в KSN
Kaspersky Application Advisor

Добавить в архив...
Добавить в архив "Launch.zip"
Восста&новить прежнюю версию

&Вырезать
&Копировать
Создать &ярлык
&Удалить
Переи&меновать
Сво&йства


А вот так можно программно перечислить перечень всех глаголов контекстного меню,
а также выполнить один из них (в примере "Установить" для файла Elevate.inf, который должен лежать рядом с программой (или .xls-файлом).

Кликните здесь для просмотра всего текста

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
Sub main()
 
'Path_dpnx = "c:\users\Public\desktop\Resident Evil Revelations.lnk" 'тестирую ярлык
Path_dpnx = "h:\_CMD рус\_Support_Tools\7zSFX\inf\launch.inf"
'Path_dpnx = "c:\VoiceSpy\reports\29.05.2013" 'тестирую папку
'Path_dpnx = "c:\VoiceSpy\reports\29.05.2013\29.05.2013_22_58_31.jpg" 'тестирую файл
'Path_dpnx = "c:\" 'тестирую корень
 
'Чтобы получить путь к объекту через аргументы или меню Shell:SendTo
'Раскомментируйте нижнюю строку:
'if WScript.Arguments.Count > 0 then Path_dpnx = WScript.Arguments(0)
 
Set objShellApp = CreateObject("Shell.Application")
 
'В языке VBScript не поддерживаются метки: работаем через цикл
Do
  Path_d = Left(Path_dpnx, 3)
  Set objFolder = objShellApp.Namespace(Path_d) '"C:\"
 
  If Len(Path_dpnx) > 3 Then
      Path_pnx = Mid(Path_dpnx, 4)
      Set objFolderItem = objFolder.ParseName(Path_pnx) '"VoiceSpy\reports\29.05.2013"
      If objFolderItem.isLink Then 'является ли объект ярлыком?
          ItsLink = True
          On Error Resume Next
              Set objLink = objFolderItem.GetLink
          If Err = 0 Then
              Path_dpnx = objLink.Path
          Else 'if err = 70 (Permissions Denied)
              Err.Clear
              'msgbox "Для этой операции требуется повышение привилегий"
              'Silent-режим: если не хватает прав использую ссылку на исходный ярлык вместо целевого объекта
              ItsLink = False
          End If
          On Error Resume Next
      Else
          ItsLink = False
      End If
  Else 'если корневой каталог
      Set objFolderItem = objFolder.Self
      ItsLink = False
  End If
 
Loop While (ItsLink = True) 'выполнять пока целевой объект - ярлык
 
'Ниже мы копируем в буфер обмена ссылку на объект
 
'1) Способ 1 - здесь нужно использовать глаголы на английском
objFolderItem.InvokeVerb ("Install")
 
'2) Способ 2 - здесь нужно использовать глаголы согласно системным настройкам языка
For Each objFIV In objFolderItem.Verbs()
    If objFIV.Name = "&Копировать" Then '&Открыть
        objFIV.DoIt
        Exit For
    End If
Next
 
' Вот так можно просмотреть всю коллекцию глаголов, которые поддерживает конкретный выделенный объект
' Лучше смотреть на англоязычной винде (т.к. эти глаголы обратносовместимы с локализациями)
 
If objFolderItem.IsFolder Then 'Если объект - папка
    Set objFileOrFolder = objFolderItem.GetFolder.Self
Else
    Set objFileOrFolder = objFolder.ParseName(Path_pnx)
End If
Set objVerbs = objFileOrFolder.Verbs
If (Not objVerbs Is Nothing) Then
    For Each Verb In objVerbs
        'MsgBox Verb.Name
        Debug.Print Verb.Name
    Next
End If
End Sub
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.02.2014, 21:12
Помогаю со студенческими работами здесь

Как в datagridview отобразить две длинные строки одна после другой, но без сворачивания
Добрый день! Нужно в ряде datagridview отобразить две длинные строки, одна после другой, и чтобы при этом не делалось сворачивание...

Как сделать так что бы одна таблица читала данные с другой
Как сделать так что бы одна таблица читала данные с другой т е например если заглавие меняется то же название должно появлятся в соседней...

Как сделать что бы одна анимация начиналась сразу после другой?
Добрый день , суть проблемы такова: Пытаюсь сделать анимацию в которой будет выезжать один див чуть подождет на экране и уедет , и разу...

Как сделать. чтобы одна нарисованная фигура была под другой?
в проге рисую круг под ним надо нарисовать прямоугольник как сделать чтобы они были друг под другом???

Как сделать, чтобы одна сетевая давала инет другой сетевой?
На сколько я понимаю, необходимо прописать маршрут чтобы одна сетевая давала инет другой сетевой. Из разных подсетей у меня шлюз видит...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru