Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Seleção em um RichEdit


Sonyer

Pergunta

Olá!

Amigos, gostaria de saber como posso ao selecionar um conteúdo de um RichEdit, adicionar por exemplo [texto]Conteúdo Selecionado[/texto].

Algo como o que acontece aqui no fórum, onde se selecionamos o texto ele adiciona as balizas BBCode a o que está selecionado, por exemplo: abcd, agora cliquei em negrito e ele automaticamente adicionou as tag ao começo e ao fim ficando:

[b]abcd[/b]

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Algo como o que acontece aqui no fórum, onde se selecionamos o texto ele adiciona as balizas BBCode a o que está selecionado, por exemplo: abcd, agora cliquei em negrito e ele automaticamente adicionou as tag ao começo e ao fim ficando:

[b]abcd[/b]
Sonyer, recentemente houveram outros tópicos questionando sobre RichEdit, você pode dar uma olhada neles para mais algum detalhe. Quando você seleciona um texto em um componente descendente da classe TCustomRichEdit, você terá algumas propriedades para manipular esta informação: - SelStart = posição do texto onde inicia a seleção; - SelLength = quantidade de caracteres selecionados; - SelText = texto atualmente selecinado; - SelAttributes = contém informações sobre a formatação do texto selecionado (na posição do ponto de inserção). A alteração de qualquer informação, como fonte, cor ou tamanho irão refletir sobre o texto selecionado; Quando há um texto selecionado, SelLength é maior que zero e SelText será diferente de ''. Para efeito de posicionamento no texto existente no RichEdit, você deve usar a propriedade Text (não Lines.Text, pois estas incluem os avanços de linha e o posicionamento ficaria incorreto). Se você não precisar usar formatações de texto, pode habilitar a propriedade PlainText para que ele opere como um TMemo (nenhuma formatação), porém com as facilidades de um TRichEdit Para seu caso, a solução mais simples seria fazer algo como:
procedure TForm1.BtnQuoteClick(Sender :TOjbect);
var
  FormatedStr :String;
begin
  if Richedit1.SelText <> '' then
  begin
    FormatedStr := '[quote]' + Richedit1.SelText+'[/quote]';
    Richedit1.SelText := FormatedStr;
  end;
end;

Abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...