![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
TEdit en DBGrid
estoy haciendo un form donde tengo un DBGrid, quisiera saber si es posible que dentro de dicho grid, en cualquier columna pueda existir un TEDit o TDBEdit, lo que necesito es poder validar lo ingresado en la columna y que sean solo valores que me sean validos seguna las necesidades de mi aplicacion....
alguna idea?
__________________
Saludos Douglas Cruz |
#2
|
||||
|
||||
Si agregas los campos en el diseño al dataset que alimente al dbgrid puedes usar el evento OnValidate del campo para hacer validaciones. Así mimso puedes usar el evento OnBeforePost del dataset para validar y en su caso cancelar la modificación/inserción de un registro.
// Saludos |
#3
|
|||
|
|||
Si te interesa hacer comprobaciones antes de que se cambie de celda (que es cuando se dispara el evento OnValidate), en ese caso debes mirarte la propiedad InplaceEdit que traen los TCustomGrids. Es una propiedad protegida, pero puedes crearte una clase dervivada que la "desproteja" para acceder a la misma.
Dicha propiedad es creada dinámicamente por el Grid cuando se entra en modo edición (sea o no un componente DBAware como DBGrid), por lo tanto antes de consultarla hay que verificar que no sea nil, y es la encargada de responder a las pulsaciones de teclado y de almacenar lo que esté escribiendo el usuario. Es como el TEdit que andas buscando. Un saludo
__________________
Guía de Estilo |
![]() |
|
|
![]() |
|