FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
extraer un dato de un dbgrid
hola ...
tengo tengo un problema en la extraccion de datos de un dbgrid, lo que busco es que cuando realice un doble click en una fila me mande en dato donde se encuentra ubicado´{o mejor el codigo_id que esta relacionado con la tabla de la cual en producto el dbgrid.. no se si pueden ayudarme gracias..... |
#2
|
||||
|
||||
a ver si te entendi bien: cuando haces doble clic en una celda, necesitas el "código_id" de esa celda, o sea, puedes tener varios campos, haces clic en cualquiera de ellas, pero sólo necesitas el código?? Eso es??
__________________
|
#3
|
|||
|
|||
ok
si!!!!!!!!, eso es exactamente lo que quiero.....
o si no darme una direccion donde pueda profundizar mar mas sobre los dbgrid... |
#4
|
||||
|
||||
en el evento en el evento!
Hola para seleccionar el campo de el dbgrid si lo tienes ligado a una tabla esto es lo que debes de hacer suponiendo que lo quieras mostrar en un edit:
Saludos |
#5
|
|||
|
|||
Creo tener lo que buscas
Bueno, en realidad si entendi bien tu pregunta lo que necesitas es extraer un dato del registro del que te encuentras actualmente ¿verdad?... si es asi, pues es muy sencillo, lo único que tienes que hacer es conocer el nombre de la columna de la que auiqres saber el dato. Como te encuentras en ese momento apuntando a un registro no necesitas volver a buscarlo en la tabla, solo le tienes que decir a delphi que ingrese al campo por medio de la propiedad TField que puedes encontrar en los componentes TTable y TQuery.
Ya para no hacertela cardiaca en los eventos del DBGrid se encuentra uno llamado OnDblClick el cual respunde a tu primer problema de captura de doble click, ahora lo que tienes que hacer es colocar el siguiente código que le dice a Delphi lo que te explique anteriormente: procedure TForm1.DBGrid1DblClick(Sender: TObject); begin Edit1.Text := Table1.FieldByName('nombre del campo').AsString; end; En lugar de asString puedes usar asInteger si tu campo es entero, asFloat si tu campo es Real o cualquier otro. Puedes utilizar asString y Delphi realiza la conversión interna, es decir, si tu campo es de tipo Fecha al extraerlo con el formato asString Delphi realiza la conversión para que puedas obtener tu dato en formato String. Para más información consultate la ayuda del Delphi. P.D. este código lo utiliza en Delphi 5. No se qué tanto varie en otras versiones, suerte y chau ;> |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|