PDA

Ver la Versión Completa : Salto de Carro por teclado


nazosoto
07-07-2006, 15:44:51
Tengo el siguiente problema...
Leo un archivo en el cual yo tengo algunos caracteres especiales que me indican que en el momento de mostrarlo debo ingresar un salto de carro.
El punto es que al momento de ingresar por codigo el texto (o sea cuando estoy recorriendo el texto del archivo) a un componente del tipo MEMO pense que con poner el caracter #13 o chr(13) me insertaria un salto te carro, pero para mi sorpresa se me muestra un |, o sea que no lo reconoce.
Que debo hacer? Cambiar de componente o hay aguna manera de tener una equivalencia a #13 que es muestre como un salto te carro en el MEMO
Desde ya muchisimas gracias

seoane
07-07-2006, 16:07:19
Imaginemos que tenemos un texto en el que el carácter '|' indica un cambio de linea, para cargarlo en un memo haríamos los siguiente:


var
Texto: string;
begin
Texto:= 'Uno|Dos|Tres';
Memo1.Lines.Text:= StringReplace(Texto,'|',#13,[rfReplaceAll]);
end;


Se podrá dar el caso de que necesitemos insertar mas de un texto en el mismo memo, no tendría mayor dificultad:


var
Texto: string;
begin
Texto:= 'Uno|Dos|Tres';
Memo1.Lines.Text:= StringReplace(Texto,'|',#13,[rfReplaceAll]);
Texto:= 'Cuatro|Cinco|Seis';
Memo1.Lines.Text:= Memo1.Lines.Text + StringReplace(Texto,'|',#13,[rfReplaceAll]);
end;


De todas formas recordarte que en windows el cambio de linea se indica con dos caracteres #13#10, en el caso del memo basta con indicar solo el #13 que delphi internamente se encarga de incluir en #10. Aunque la forma correcta de hacerlo seria la siguiente:


Memo1.Lines.Text:= StringReplace(Texto,'|',#13#10,[rfReplaceAll]);


Espero que el ejemplo anterior te sirva de ayuda