COMANDO PARA "SUBSTITUIR.."

USUARIO.EXCLUIDOS 05/04/2007 08:54:23
#210435
Olá =)
Gostaria de saber como eu substituir todas palavras de um TextBox.
Tipo,meu programa ajuda a criar um script,tbm gostaria de saber como deixar tais comandos em outras cores.O que esta entre aspas o ";" no final...
Obrigado
USUARIO.EXCLUIDOS 05/04/2007 10:38:18
#210462
Resposta escolhida
Supondo que o textbox tenha a seguinte palavra:

TextBox.text = "ARTIGOS:"

Exemplo para substituir o dois pontos(:) por (;)

Dim iPos as integer

iPos = InStr(TextBox.Text,":") 'Guarda a posicao do (:)

if iPos <> 0 then
mid(TextBox.Text, iPos, 1) = ";" 'Substitui o : por ;
end if

Com relação a mudar as cores lembre-se que cada TextBox
só pode ter uma cor. Exemplo:

TextBox.ForeColor = vbgreen

ESPERO TER AJUDADO.


F.A.S 05/04/2007 10:50:25
#210466
Ou vc pode utilizar a funcao Replace
USUARIO.EXCLUIDOS 05/04/2007 10:52:58
#210468
Frau
eu uso o "RTF" la
teria como?
USUARIO.EXCLUIDOS 05/04/2007 12:40:21
#210487
Deu um erro nesse script aqui:
Citação:

For X = 1 To 1000

'Alterar o "show"
iPos = InStr(Text1.Text, "show")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 4) = "mes"
End If

'Alterar o "setjob"
iPos = InStr(Text1.Text, "setjob")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 6) = "jobchange"
End If

'Alterar o "setbase"
iPos = InStr(Text1.Text, "setbase")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 7) = "changebase"
End If

'Alterar o "setsex"
iPos = InStr(Text1.Text, "setsex")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 6) = "changesex"
End If

'Alterar o "digit"
iPos = InStr(Text1.Text, "digit")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 5) = "input"
End If

'Alterar o "additem"
iPos = InStr(Text1.Text, "additem")
If iPos <> 0 Then
Mid(Text1.Text, iPos, 7) = "getitem"
End If

Next X


Erro:
Citação:

Variable required - Can't assign to this expression


Nessa linha:
Mid(Text1.Text, iPos, 4) = "mes"
Citação:


Eu arrumei colocando uma variavel = Text1.text e substituindo,paro de dar o erro porém n substituia nada
USUARIO.EXCLUIDOS 06/04/2007 14:41:31
#210603
CERVEJ4, entao vamos fazer o seguinte: Usar o replace, segue
exemplo abaixo:

For X = 1 To 1000

'Alterar o "additem"
Text1.Text = Replace(Text1.Text,"additem","getitem")

Next X

Agora mude as outras linhas com base no exemplo e veja
se dá certo...Qualquer duvida poste.



USUARIO.EXCLUIDOS 06/04/2007 15:10:04
#210610
Replace realmente é mais indicado, porque não tenta validar o tamanho do texto e também porque não força o desenvolvedor á saber antecipadamente as posições dos caracteres no texto ou o tamanho final do mesmo.

Com relação ás cores, você vai precisar substituir o TextBox por um RichTextBox, que aceita formatação e cores. No próprio sistema de ajuda do VB você vai encontrar vários exemplos de como formatar textos no RichText, incluindo nerito, itálico, cores, colunas, marcadores e numeração, subescrito/superescrito etc.
USUARIO.EXCLUIDOS 06/04/2007 15:21:22
#210614
Professor,como eu citei acima,ja estou usando o RichTextBox
USUARIO.EXCLUIDOS 06/04/2007 18:15:23
#210628
Deu certo CERVEJ4 ?
USUARIO.EXCLUIDOS 06/04/2007 20:41:51
#210643
Sim Frau......
Obrigado mesmo \o/
Tópico encerrado , respostas não são mais permitidas