Ver Mensaje Individual
  #3  
Antiguo 23-04-2004
gaska gaska is offline
Registrado
 
Registrado: abr 2004
Posts: 5
Reputación: 0
gaska Va por buen camino
Codigo de mi problema con tmemo

Mi intencion es crear una funcion que devuelva el caracter del tmemo de la posicion indicada por las variables globales fila y columna. Para lo cual hago mas o menos lo siguiente:

function leer_caracter:char;
var
c:char;
begin
//Si existen caracteres para leer
if principal.MemoXml.Lines.Count>fila then begin
//Si nos encontramos en una linea vacia pasamos a la siguiente. Pense
//que este trozo me solucionaria el problema de los "intros", pero no.
if (length(principal.MemoXml.Lines.Strings[fila])=0) then begin
fila:=fila+1;
columna:=1;
end;
//Leemos el caracter sobre el que estamos situados. Aqui me da la
//excepcion EAccessViolation.
c:=principal.MemoXml.Lines.Strings[fila][columna];
end
else
//Si ya no quedan más caracteres por leer escribo el codigo #0
//de final de documento.
leer_caracter:=#0;
//Devuelvo el caracter recogido.
leer_caracter:=c;
end;{leer_caracter}

He pensado que la solucion pasaria por usar la propiedad text en lugar de intentarlo por lineas, pero no se muy bien como. Soy algo novato.
Responder Con Cita