Ver Mensaje Individual
  #2  
Antiguo 15-06-2007
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
NULL
 
Registrado: oct 2006
Posts: 2.159
Reputación: 15
cHackAll Va por buen camino
Cool No problem!

Cita:
Empezado por JuanErasmo
...
AnsiPos("Texto a buscar", Memo1->Text);
...
Disculpa mi insistencia en ayudarte, pero me parece que todas tus soluciones estan en pasarte a Delphi ahora que puedes...

Te explico un poquillo... la clase TCustomMemo hereda de la clase TCustomEdit la cual tambien es heredada por un TEdit común y corriente... el motivo por el que hicieron esto creo que es obvio.

Ahora, un TEdit tiene la una propiedad llamada "Text" a la cual tu estás haciendo referencia en tu ejemplo... sin embargo siendo un componente con múltiples lineas pues habra un texto, el "Enter" y la siguiente linea... en resumen la propiedad Text te estara retornando algo como esto:

"Linea1□□Linea2□□Linea3...." es por eso que no te retorna lo que quieres, para poder acceder a la linea que contiene tu texto debes acceder al vector de cadenas del componente... En Delphi algo como ésto:

Código Delphi [-]
var Linea: Integer;    // Tipo de entero con negativos
begin
 Linea := Memo1.Lines.Count - 1;  // Lines es el TStrings, "Count - 1" es el último valor
 while (Linea <> -1) and (AnsiPos('Texto a buscar', Memo1.Lines[Linea]) = 0) do
// La anterior dice, que mientras la linea no sea "-1" = No encontrado y no se encuentre el texto en la linea...
  Dec(Linea);  // decrementara la linea
...

Al final en Linea tienes la linea donde está el texto, siendo -1 un "no encontrado"


Espero te sea útil, Suerte!
Responder Con Cita