Tema: StringGrid
Ver Mensaje Individual
  #2  
Antiguo 07-10-2003
Jan Jan is offline
Miembro
 
Registrado: may 2003
Ubicación: Cádiz
Posts: 90
Reputación: 21
Jan Va por buen camino
Puedes crear una clase descendiente de TObject, con una propiedad del tipo adecuado para mantener el valor correcto de una celda.

A través de la propiedad Objects del TStringGrid, le asignas una instancia de dicha clase a cada celda.

Finalmente, intercepta el evento OnKeyPress, para que cuando pulsen, por ejemplo, INTRO almacenas en la instancia de la clase el valor actual de la celda, pero que cuando pulsen, por decir ESC, recuperas el valor almacenado en la instancia y lo copias en la celda.

Espero haberme explicado bien, y te sirva de ayuda.

P.D.: Si utilizas esto a menudo y siempres usas en mismo tipo de valor para las celdas, por ejemplo Strings, puedes crear un componente que descienda de TStringGrid donde automatizas todo este procedo. Además, podrías interceptar otros eventos y teclas para detectar si se cambia de celda con el ratón o las flechas del cursor, sin pulsar ENTER.
Responder Con Cita