Inserir frase em campo memo
07/12/2005
0
Abs
Felipeiw
Posts
07/12/2005
Flaviocont
07/12/2005
Felipeiw
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
07/12/2005
Edilcimar
begin
linha := memo1.lines[i];
façaaquiloque quer
end
07/12/2005
Jairroberto
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] of string = (´[dia]´, ´[mês]´, ´[ano]´, ´[cidade]´); MesExtenso: array[1..12] of string = (´janeiro´, ´fevereiro´, ´março´, ´abril´, ´maio´, ´junho´, ´julho´, ´agosto´, ´setembro´, ´outubro´, ´novembro´, ´dezembro´); var VariavelValor: array[1..4] of string; i: Integer; s: string; Dia, Mes, Ano: Word; begin DecodeDate(Date, Ano, Mes, Dia); VariavelValor[1] := IntToStr(Dia); VariavelValor[2] := MesExtenso(Mes); VariavelValor[3] := IntToStr(Ano); VariavelValor[4] := ´São Paulo´; s := Strings.Text; for i := Low(VariavelNome) to High(VariavelNome) do s := StringReplace(s, VariavelNome[i], VariavelValor[i], [rfReplaceAll, rfIgnoreCase]); Strings.Text := s; end; procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Lines.Text := ´Venho por meio desta .....´13101310´[cidade], [dia] de [mes] de [ano]´; CalcularTexto(Memo1.Lines); end;
Não cheguei a testar, mas deve funcionar.
Um abraço,
Jair
Clique aqui para fazer login e interagir na Comunidade :)