2012-05-21 5 views
1

Я пытаюсь объединиться в vb6. Оператор + = не поддерживается, и я хочу сделать что-то вроде кода ниже. Я хочу добавить больше строк в текстовое поле, так как программа работает с этим кодом. Может ли кто-нибудь посоветовать, что менять + = на? Я знаю, что & может использоваться при добавлении одной строки в другую, но это пример, над которым я сейчас работаю, что не кажется подходящим.Конкатенатные строки с vb6

Спасибо.

If (strHomeNo <> "") Then 
     txtPhoneNums = "Home: " + strHomeNo 
    End If 
    If (strMobileNo <> "") Then 
     txtPhoneNums += "Mobile: " + strMobileNo 
    End If 
    If (strWorkNo <> "") Then 
     txtPhoneNums += "Work: " + strWorkNo 
    End If 
    If (txtPhoneNums <> "") Then 
     txtPhoneNums.ForeColor = vbBlack 
     txtPhoneNums.FontBold = False 
    End If 
Else 
    txtPhoneNums.Text = "NO CONTACT DETAILS" 
    txtPhoneNums.ForeColor = vbRed 
    txtPhoneNums.FontBold = True 

ответ

5

бы:

txtPhoneNums = txtPhoneNums & "Work: " & strWorkNo 

не работает?

+0

Привет, спасибо, ребята. Не думал об этом! Он отлично работает, но, оказывается, это не то, что мне нужно. Поскольку значение, находящееся в настоящее время в txtPhoneNums, может не иметь отношения к текущей записи, и в итоге добавляю чужие детали. Я написал значительно больший кусок кода, который обошел это (без конкатенации). Еще раз спасибо. – GrumP

+1

Concatentaion в порядке, вам просто нужно очистить его первым – Deanna

2

В VB6, вы конкатенации строк с оператором &, как вы говорите. Я не помню, чтобы там быть сокращенным &= (это было в то время), так что вам нужно:

txtPhoneNums = txtPhoneNums & "Mobile: " & strMobileNo 

Не думаю, что есть лучший путь.

2

@ David's & @ Ответы Бранта верны. Однако, если вы обнаружите, что делаете много конкатенаций, вы можете создать класс, чтобы упростить вам работу. Что-то вроде: txtPhoneNums.Add («Мобильный:», strMobileNo). Я использую его для создания своих SQL-операторов.

+0

отличное предложение. Это очень неуклюжий/громоздкий процесс с точки зрения необходимого синтаксиса, поэтому построение метода могло бы по меньшей мере уменьшить размер кода –

+1

. Вы могли бы написать один или использовать отличный, быстрый, бесплатный, который уже существует. Например. Карл Петерсон [VB6 StrBldr] (http://vb.mvps.org/samples/StrBldr/) – MarkJ

Смежные вопросы