![]() |
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 |
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 |
¡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. :) |
Conseguido
OK gracias, usando:
type THackGrid = class(TDBGrid);..... .... THackGrid(DBGrid1).InplaceEditor.Text; Consigo recuperar el valor temporal de esa celda. gracias. |
| La franja horaria es GMT +2. Ahora son las 12:12:51. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi