Inserir frase em campo memo

07/12/2005

Exemplo, tenho um texto em um campo memo, mas quero inserir uma palavra em um determinado local pre-determinado no texto, como posso fazer isso?
Abs


Felipeiw

Respostas

07/12/2005

Flaviocont

Memo1.Lines[0]:=´EITA´; // ESCREVE EITA NA PRIMEIRA LINHA DO MEMO


Responder Citar

07/12/2005

Felipeiw

com a funcao Posex eu consigo encontrar uma ´marca´ que vou colocar no local onde devo acrescentar a palavra, mas como encontro a linha
por exemplo

Texto:

Venho por meio desta .....

Sao paulo, xxx de xxxxxx de 2005


Onde esta o xxx tenho que acrescentar o dia e onde esta o xxxxxx o mes corrente. E isso


Responder Citar

07/12/2005

Edilcimar

for i := 0 to memo1.lines.count - 1 do
begin
linha := memo1.lines[i];
façaaquiloque quer
end


Responder Citar

07/12/2005

Jairroberto

Olá, Felipe!

Usando a propriedade ´Text´ do objeto ´TStrings´ e a função ´StringReplace´ eu acho que fica mais fácil. Além disso, se você tiver muitas variáveis, pode ser mais adequado criar vetores para facilitar a substituição de todos elas. Veja um exemplo:

procedure CalcularTexto(Strings: TStrings);
const
  VariavelNome: array[1..4&93; of string = (´&91;dia&93;´, ´&91;mês&93;´, ´&91;ano&93;´, ´&91;cidade&93;´);
  MesExtenso: array&91;1..12&93; of string = (´janeiro´, ´fevereiro´, ´março´, ´abril´, ´maio´, ´junho´, ´julho´, ´agosto´, ´setembro´, ´outubro´, ´novembro´, ´dezembro´);
var
  VariavelValor: array&91;1..4&93; of string;
  i: Integer;
  s: string;
  Dia, Mes, Ano: Word;
begin
  DecodeDate(Date, Ano, Mes, Dia);
  VariavelValor&91;1&93; := IntToStr(Dia);
  VariavelValor&91;2&93; := MesExtenso(Mes);
  VariavelValor[3&93; := IntToStr(Ano);
  VariavelValor&91;4&93; := ´São Paulo´;

  s := Strings.Text;
  for i := Low(VariavelNome) to High(VariavelNome) do
    s := StringReplace(s, VariavelNome&91;i&93;, VariavelValor&91;i&93;, &91;rfReplaceAll, rfIgnoreCase&93;);

  Strings.Text := s;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.Text := ´Venho por meio desta .....´13101310´&91;cidade&93;, &91;dia&93; de &91;mes&93; de &91;ano&93;´;

  CalcularTexto(Memo1.Lines);
end;


Não cheguei a testar, mas deve funcionar.


Um abraço,
Jair


Responder Citar