inserir texto richedit

Delphi

04/02/2008

Caros colegas, procurei no forum mas não consegui encontrar a solucao para minha duvida.
Tenho uma tabela de textos pre-definidos que o usuario ira utilizar para complementar um texto final.
Meu problema é que o cursor sempre volta para o inicio do texto no qual estou inserindo e eu preciso que o cursor permaneça no final do texto incluido para que o usuario continue inserindo outros.
Estou utilizando o seguinte codigo.

// acha a linha atual
Linha := SendMessage(dbreditdiagno.Handle,EM_LINEFROMCHAR,dbreditdiagno.SelStart,0);
// posiciona na linha
dbreditdiagno.SelStart := Perform(EM_LINEFROMCHAR, Linha, 0);
// guardo o texto a ser incluido em um componente temporario
reditmemo.Text := dmrequisicao.qryinfocitolo.fieldbyname(´TEXTOCITO´).Value;
// insiro o texto
dbreditdiagno.Lines.Insert(Linha,reditmemo.Text);
// tento reposicionar o cursor
With dbreditdiagno do
begin
SelStart := Perform(EM_LINEINDEX, Linha, 0);
end;
agradeço desde ja a atenção
abraços


Josemarmt

Josemarmt

Curtidas 0

Respostas

Dor_poa

Dor_poa

04/02/2008

Caraa se vc quer mudar algo dentro de um texto use o comando StringReplace e muiiito mais fácil!!!


Exemplo:
Valor := Ola <NOME> como vai?

Valor := StringReplace(Valor ,´<NOME>´, Fulano de tal, [rfReplaceAll,rfIgnoreCase]);


Vai ficar assim:
Ola Fulano de tal como vai?


OBS.: VALOR e uma variável STRING que tem todo o seu texto MATRIZ (fiz só para facilitar a DEMONSTRAÇÃO)


GOSTEI 0
Josemarmt

Josemarmt

04/02/2008

Caro Eduardo, antes de mais nada agradeço a força, porém acho que não fui muito claro quanto ao problema.
Forneço um texto em branco que será preenchido pela inserção de outros textos pré-formatados. Não há substituições somente inclusões.
Tipo assim:

INICIO DO TEXTO

<- INSERI TEXTO AQUI

BLA BLA BLA BLA BLA

<- INSERI TEXTO AQUI

FINAL

Sendo que o texto INICIO ... FINAL, tambem teria sido previamente inserido.
Valeu


GOSTEI 0
POSTAR