FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Tmemo Index(saber en que linea estoy)
¿Es posible saber en que linea me encuentro al hacerle un click dentro de un memo?
Tengo un boton para borrar lines de un memo. hago lo siguiente: Memarx.Lines.Delete(n); Necesito saber n. Como puedo saber en que linea estoy? Tambien. ¿Es posible seleccionar toda la linea desde un memo? Cuando le doy click a la linea 1 se me seleccione en azul toda la linea. Un saludo Gracias. |
#2
|
||||
|
||||
Para hallar el número de línea (basado en 0) en donde se encuantra el cursor:
Código:
Line := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, -1, 0); Código:
StartChar := SendMessage(Memo1.Handle, EM_LINEINDEX, Line, 0); EndChar := SendMessage(Memo1.Handle, EM_LINEINDEX, Line + 1, 0); Todo junto lo podrías poner en el evento OnClick del Memo: Código:
procedure TForm1.Memo1Click(Sender: TObject); var Line: Integer; StartChar, EndChar: Integer; begin Line := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, -1, 0); StartChar := SendMessage(Memo1.Handle, EM_LINEINDEX, Line, 0); EndChar := SendMessage(Memo1.Handle, EM_LINEINDEX, Line + 1, 0); Memo1.SelStart := StartChar; Memo1.SelLength := EndChar - StartChar; end; // Saludos |
#3
|
|||
|
|||
Muchas gracias Roman
Perfecto Un saludo |
|
|
|