Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-12-2007
jose.mendez jose.mendez is offline
Registrado
 
Registrado: feb 2004
Posts: 8
Poder: 0
jose.mendez Va por buen camino
Talking Valor de una celda de un Tdbgrid

Hola, tengo delphi 3 y necesitaria poder leer el valor de una celda de un tdbgrid, pero no el valor que tiene, ni el nuevo sino el que tecleo pero aún no esta sigando. Me explico la idea es: escribo algo en esa celda y pulso el boton asociado a esa celda EditButton, si hago dentro de Editbuttonclick:

temp:= reja.SelectedField.Text; "obtengo el valor vacio o el que estaba antes como valor de esa celda, pero no el temporal mientras no se graba en el campo.

Pero el que acabo de escribir y por el que quiero buscar en otra bbdd no se como obtenerlo pues si lo almaceno si puedo verlo con:
temp :=tabla.FIELDBYNAME('campo').ASstring; pues ya esta almacenado en la tabla y necesitaba poder saber el que esta todavía sin asignar.

Cómo puedo obtener ese valor temporal cuando pulso el botón EditButton asociado a la celda ??? , ese que no esta todavía asignado en el campo???

un saludo
Responder Con Cita
  #2  
Antiguo 31-12-2007
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
bueno la idea, no tengo código a la mano para explicarte.

cuando estás empiezas a editar una celda no lo haces directamente sobre el grid, sino que lo haces sobre un componente llamado InplaceEditor el cual es un textbox y ocupa la misma posición y tamaño de la celda con lo cual da la sensación que estás sobre el grid.

entonces lo que hay que hacer (me gustaría decirte como pero no tengo las fuentes del vcl conmigo) es obtener el text del inplaceEdit y no de la celda.

saludos
__________________
self.free;
Responder Con Cita
  #3  
Antiguo 01-01-2008
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile

¡Hola a todos!

Como dice Droguerman, la clave es usar la propiedad InplaceEditor.Text de la rejilla. Viendo la ayuda de Delphi, parece ser que TDBGrid.InplaceEditor es una propiedad protegida, por lo que quizá convenga emplear un molde de acceso o incluso una clase interpuesta (de lo cual hay algunos ejemplos en los foros).

No dejes de retroalimentar el hilo José.

Un abrazo iniciando el año.

Al González.
Responder Con Cita
  #4  
Antiguo 01-01-2008
jose.mendez jose.mendez is offline
Registrado
 
Registrado: feb 2004
Posts: 8
Poder: 0
jose.mendez Va por buen camino
Conseguido

OK gracias, usando:

type
THackGrid = class(TDBGrid);.....
....
THackGrid(DBGrid1).InplaceEditor.Text;


Consigo recuperar el valor temporal de esa celda.

gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Valor celda de un datagrid Ivan_25 .NET 6 29-02-2008 10:52:54
valor de una celda de un dbgrid alopete Varios 4 17-10-2007 17:32:46
Obtener valor de una celda de un DBGrid Albano Conexión con bases de datos 10 13-01-2006 17:53:26
Valor de una delda del Tdbgrid jose.mendez OOP 1 06-03-2005 15:56:21


La franja horaria es GMT +2. Ahora son las 07:20:30.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi