Caracteres no inicio e no fim de um Tmemo
Exemplo tenho 2 memos no primeiro eu digito ´ Bom Dia´ dai no segundo memo são adicionados ´@´ + memo1.text + ´@´
ficando assim o texto do memo 2 : @Bom Dia@
Até ai tudo bem, mas o que eu gostaria de fazer é o seguinte, quando eu apertasse a tecla enter no memo 1 (que equivale a pular 1 linha) queria que no memo 2 acontecesse o mesmo ou seja ficaria desse modo:
texto do memo 1 :
Linha 1: Bom Dia!
Linha 2: Como vai?
Texto Memo2
Linha 1: @Bom Dia!@
Linha 2: @Como vai?@
E assim por diante mas quando eu aperto enter o memo 2 fica desse modo:
@ Bom Dia Como vai?@
Tudo na mesma linha, gostaria de saber como seria possivel realizar isso, desde ja agradeço! Abraço!
ficando assim o texto do memo 2 : @Bom Dia@
Até ai tudo bem, mas o que eu gostaria de fazer é o seguinte, quando eu apertasse a tecla enter no memo 1 (que equivale a pular 1 linha) queria que no memo 2 acontecesse o mesmo ou seja ficaria desse modo:
texto do memo 1 :
Linha 1: Bom Dia!
Linha 2: Como vai?
Texto Memo2
Linha 1: @Bom Dia!@
Linha 2: @Como vai?@
E assim por diante mas quando eu aperto enter o memo 2 fica desse modo:
@ Bom Dia Como vai?@
Tudo na mesma linha, gostaria de saber como seria possivel realizar isso, desde ja agradeço! Abraço!
Quasenada
Curtidas 0
Respostas
Rodrigoxcruz
08/04/2008
Quando vc pega o valor do memo1.text ele pega como uma única string, onde cada linha é colocada na frente da outra.
vc precisa trocar o
Memo1.text
por
Memo1.Lines[numero da linha]
vc precisa trocar o
Memo1.text
por
Memo1.Lines[numero da linha]
GOSTEI 0
Quasenada
08/04/2008
:P Mas é o seguinte não haveria uma rotina do tipo:
1º linha: ´esse aqui é o texto do memo1´
2º linha: ´esse aqui também´
3º linha: ´etc´
4º linha: ´etc´
ao por exemplo ao clicar em um botao o memo 2 ficaria assim:
1º linha: ´esse aqui é o texto do memo1@´
2º linha: ´@esse aqui também@´
3º linha: ´@etc@´
4º linha: ´@etc@´
O problema esta ai quero adicionar os @ (arobas) no inicio e no final de uma frase em cada linha de um memo, sendo assim como o memo vai estar em tempo de execução não saberei quantas linhas o usuário escreveu e quantas vezes ele deu ENTER ( Quebra de linha), então como por @ no inicio e no final de cada linha antes da quebra?
1º linha: ´esse aqui é o texto do memo1´
2º linha: ´esse aqui também´
3º linha: ´etc´
4º linha: ´etc´
ao por exemplo ao clicar em um botao o memo 2 ficaria assim:
1º linha: ´esse aqui é o texto do memo1@´
2º linha: ´@esse aqui também@´
3º linha: ´@etc@´
4º linha: ´@etc@´
O problema esta ai quero adicionar os @ (arobas) no inicio e no final de uma frase em cada linha de um memo, sendo assim como o memo vai estar em tempo de execução não saberei quantas linhas o usuário escreveu e quantas vezes ele deu ENTER ( Quebra de linha), então como por @ no inicio e no final de cada linha antes da quebra?
GOSTEI 0
Quasenada
08/04/2008
Repare bem com a rotina que você me passou rodrigoxcruz eu so consigo pegar 1 linha memo1.lines[0] //pra pegar a linha 1 do memo1
mas eu quero algo desse tipo ó :
memo2.text:= ´@´ + memo1.lines[linha atual onde se encontra o cursor no memo 1] + ´@´
ou seja desse modo eu conseguiria por os @ no fim e no começo da frase, pelomenos é o que eu acho! Teria algum modo?
mas eu quero algo desse tipo ó :
memo2.text:= ´@´ + memo1.lines[linha atual onde se encontra o cursor no memo 1] + ´@´
ou seja desse modo eu conseguiria por os @ no fim e no começo da frase, pelomenos é o que eu acho! Teria algum modo?
GOSTEI 0
Quasenada
08/04/2008
[quote=´QuaseNAda´]
Dê uma olhada na minha rotina:
procedure TForm104.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
I: integer;
begin
if key = vk_return then //VK_Return é a tecla ENTER
for I := 0 to Memo1.Lines.Count -1 do
memo2.Text:=´@´+memo1.lines[I]+´@´;
end;
-----------------------------------------------------------------------
No caso ai em cima quando eu digito um texto no memo1 e aperto a tecla ENTER o Memo2 apresenta o texto do memo1 exatamente como eu quero so que se eu digitar algo na segunda linha do memo1 o memo2 substitui o primeiro pelo segundo! COmo posso resolver isso?
Dê uma olhada na minha rotina:
procedure TForm104.Memo1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
I: integer;
begin
if key = vk_return then //VK_Return é a tecla ENTER
for I := 0 to Memo1.Lines.Count -1 do
memo2.Text:=´@´+memo1.lines[I]+´@´;
end;
-----------------------------------------------------------------------
No caso ai em cima quando eu digito um texto no memo1 e aperto a tecla ENTER o Memo2 apresenta o texto do memo1 exatamente como eu quero so que se eu digitar algo na segunda linha do memo1 o memo2 substitui o primeiro pelo segundo! COmo posso resolver isso?
GOSTEI 0
Rodc
08/04/2008
procedure TForm104.Memo1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var I: integer; begin if key = vk_return then //VK_Return é a tecla ENTER begin memo2.Clear; for I := 0 to Memo1.Lines.Count -1 do memo2.Lines.Add(´@´+memo1.lines[I]+´@´); end; end;
GOSTEI 0
Quasenada
08/04/2008
rodc valeu cara, muito obrigado mesmo! Tão simples e eu quebrando a cabeça! :D
Muito obrigado mesmo cara, me ajudou muito valeu!!!!
Obrigado a vc também rodrigoxcruz! Ate outro dia, ou outra dúvida :D !
Muito obrigado mesmo cara, me ajudou muito valeu!!!!
Obrigado a vc também rodrigoxcruz! Ate outro dia, ou outra dúvida :D !
GOSTEI 0