La Web del Programador: Comunidad de Programadores
 
    Pregunta:  35962 - MOSTRAR LINEA Y COLUMNA DEL CURSOR DENTRO DE UN EDITOR C++
Autor:  Vanesa S
Estoy implementando un editor de texto en Borland Builder C++. Mi editor contiene una barra de estado en la parte inferior de mismo en la cual visualizo la hora y la fila y columna donde se encuentra el cursor.

Tengo problemas al mostrar la fila y la columna y no si lo estoy haciendo bien o se puede conseguir de otro modo. El documento de texto lo abro en un componente TRichEdit de C++, y el código que empleo para obtener la fila y la columna es éste, pero no funciona bien:

posCursorX = (REditArch->CaretPos).x; // nº Columna en la q esta el cursor
posCursorY = (REditArch->CaretPos).y; // nº Fila o Linea en la q esta el cursor

Espero que alguien pueda indicarme qué es lo que hago mal y como visualizar la fila y columna en la que se encuentra el cursor y que cambie según se mueve éste.

  Respuesta:  Hugo OH
hola vanesa

puedes utilizar el siguiente codigo:

int y = SendMessage(eRich->Handle, EM_LINEFROMCHAR, eRich->SelStart, 0);

int x = eRich->SelStart - SendMessage(eRich->Handle, EM_LINEINDEX, y, 0);

en los eventos KeyUp o KeyDown, y OnClick ...

saludos...

EOF