Fórum inserir texto richedit #353033
04/02/2008
0
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
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
Curtir tópico
+ 0
Responder
Posts
15/02/2008
Dor_poa
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)
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)
Responder
Gostei + 0
15/02/2008
Josemarmt
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
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
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)