Página 1 de 1

RICHEDIT Ajuda

Enviado: 12 Jul 2012 10:56
por bencz
Olá (:

Gostaria de saber, como posso fazer para alterar trechos de um texto que eu escrevi em um RICHEDIT, por exemplo, deixar uma palavra com BOLD, mudar a cor de outras palavras....
Agradeço a ajuda.

RICHEDIT Ajuda

Enviado: 13 Jul 2012 15:49
por bencz
Na realidade, o meu maior problema é: conseguir pegar o texto, ou a posição do texto selecionado...

RICHEDIT Ajuda

Enviado: 14 Jul 2012 12:51
por esbasso
re_SetCharFormat( orichedit.handle, n1, n2, nColor, cName, nHeight, lBold, lItalic,
lUnderline, nCharset, lSuperScript/lSubscript(.T./.F.), lProtected )
onde n1 = inicio da seleção
n2 = final da seleção

n1 := SendMessage( orichedit:handle, EM_LINEINDEX, orichedit:Line - 1, 0 ) + 1
n2 := n1+ tamanho do texto

RICHEDIT Ajuda

Enviado: 14 Jul 2012 20:42
por bencz
Bom, e para pegar o texto selecionado ?

RICHEDIT Ajuda

Enviado: 14 Jul 2012 20:57
por Imatech

Código: Selecionar todos


n1 := orichedit:selstart
n2 := orichedit:SelStart + orichedit:SelLength

Selected_Text := Substr( orichedit:GetText(), n1, n2 )


RICHEDIT Ajuda

Enviado: 16 Jul 2012 08:19
por bencz
Onde posso encontrar a documentação sobre esses comandos ??

Procurei na documentação e nao encontrei nada ;x

RICHEDIT Ajuda

Enviado: 16 Jul 2012 11:48
por bencz
Certo, eu estou tentando salvar em um arquivo rtf, o texto, mas, nao estou conseguindo, como posso fazer ???
TIpo, salvar, ou retornar o conteudo rtf do richedit p/ uma string

RICHEDIT Ajuda

Enviado: 16 Jul 2012 12:25
por esbasso
mas leia os fontes
veja o HRICHEDIT.PRG

VEJA O SAVEFILE( cfile )

RICHEDIT Ajuda

Enviado: 16 Jul 2012 14:12
por bencz
certo, mas como posso fazer p/ apenas pegar o texto com a formatação, tipo, jogar aquelas informações p/ uma variavel ???

RICHEDIT Ajuda

Enviado: 16 Jul 2012 14:16
por bencz
E por exemplo, eu tenho uma palavra do meu texto, que está em BOLD, como eu faço p/ verificar se aquela palavra, ja esta com negrito ???
p/ q se caso ela estiver, eu já possa tirar o negrito.... tipo, seleciono a palavra, caso esteja em negrito, remover negrito, caso contrario, add negrito...

RICHEDIT Ajuda

Enviado: 16 Jul 2012 14:39
por esbasso
Naõ foi implementado a função no SVN que retorna as caracteristicas de determinada palavra selecionada do texto.
Vou ver se faço isso esta semana.

RICHEDIT Ajuda

Enviado: 16 Jul 2012 14:48
por bencz
Certo, muito obrigado (:

RICHEDIT Ajuda

Enviado: 16 Jul 2012 14:54
por bencz
E por exemplo, caso eu tenha uma string assim:

Código: Selecionar todos

{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 Times New Roman;}}
\viewkind4\uc1\pard\f0\fs26 ola mundo\par
}
como posso fazer p/ abrir essa string diretamente pelo código... tipo:

Código: Selecionar todos

cStringRTF := "{\rtf1\ansi\ansicpg1252\deff0\deflang1046{\fonttbl{\f0\fnil\fcharset0 Times New Roman;}} + ; "\viewkind4\uc1\pard\f0\fs26 ola mundo\par}"

oRTF:SetText(cStringRTF)

Ou algo assim, entende ?

RICHEDIT Ajuda

Enviado: 16 Jul 2012 15:56
por bencz
Como posso usar a função re_FindText ?

tentei utilizar ela, mas como retornava -1, entao, nao sabia com trabalhar com ela...

Código: Selecionar todos

re_FindText( ::oRTF:handle, cText, 1, .f., .t., .t. )

RICHEDIT Ajuda

Enviado: 16 Jul 2012 17:21
por esbasso
veja o arquivo
richtext.prg na pasta source