Inserir frase em campo memo
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
Abs
Felipeiw
Curtidas 0
Respostas
Flaviocont
07/12/2005
Memo1.Lines[0]:=´EITA´; // ESCREVE EITA NA PRIMEIRA LINHA DO MEMO
GOSTEI 0
Felipeiw
07/12/2005
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
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
GOSTEI 0
Edilcimar
07/12/2005
for i := 0 to memo1.lines.count - 1 do
begin
linha := memo1.lines[i];
façaaquiloque quer
end
begin
linha := memo1.lines[i];
façaaquiloque quer
end
GOSTEI 0
Jairroberto
07/12/2005
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:
Não cheguei a testar, mas deve funcionar.
Um abraço,
Jair
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
GOSTEI 0