Cita:
Empezado por roman
...me parece que sería mejor intentar no simular esas teclas y manipular los valores de Col y Row en el evento KeyDown.
|
Cita:
Empezado por gluglu
El StringGrid tiene el evento OnKeyPress en el cual puedes 'interceptar' las teclas del cursor Izquierda y Derecha.
Basta con que muevas la posición Col y Row del StringGrid :
StringGrid1.Col := StringGrid1.Col + 1; (o - según Der o Izq)
Una vez que te posiciones, compruebas si la celda es editable o no, y si no lo es aumentas la posición de la columna. Al comprobar que llegas a la última columna y pulsas derecha, vuelves a la 1a columna pero con 1 fila más, y así sucesivamente.
No veo la necesidad de utilizar la función Keyb_Event.
|
Si es lo que yo decía

Pero como estaba empecinado con el TAB pues también seguí por ese camino.
Toma en cuenta, eso sí, como menciona
escafandra, que debes manejar no sólo las teclas LEFT y RIGHT sino también UP, DOWN, PRIOR, NEXT, TAB, o sea, todas las que muevan el cursor del teclado con lo cual prácticamente estás rehaciendo la lógica del movimiento y en ese punto uno se pone a pensar que la idea de
Casimiro no es mala pues se termina escribiendo, quizá, menos código.
// Saludos