Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Problema con dbedit en ventana modal (https://www.clubdelphi.com/foros/showthread.php?t=59257)

M. FM. 19-08-2008 14:39:15

Problema con dbedit en ventana modal
 
Buenas tardes:

Tengo un problema que no sé cómo solucionar y no sé si me podrán echar una mano. La situación es la siguiente:

1. Tengo creada una ventana desde la que llamo a otra en forma modal. Esa ventana contiene un dbgrid y unos cuantos dbedit relacionados con él que funcionan a la perfección.
2. En la ventana que se abre en forma modal existe un dbgrid similar al anterior, con sus correspondientes dbedit.
3. En la ventana padre, hago un append en el clientdataset del dbgrid al empezar, de forma que todos los dbedit aparecen preparados para que inserte datos, con el foco en el primer dbedit.
4. Cuando trato de hacer lo mismo en la ventana hijo, no hay manera. Todos los dbedit aparecen en blanco, pero el foco está en el dbgrid y cuando pincho en un dbedit, se rellenan todos con los datos del último registro del grid, a pesar de que yo no lo he seleccionado en ningún momento. Si intento forzar el foco por código en uno de los dbedit, me aparece el mensaje de error "Cannot focus on a disabled or invisible window".

¿Cómo debo hacer para poder insertar datos en los dbedit de la ventana modal? He intentado buscar en el foro si a alguien le había pasado algo parecido, pero no he encontrado nada.

Muchas gracias y saludos

BlueSteel 19-08-2008 15:12:03

Hola M. FM.

Con que bases estas trabajando...?? como tienes conectados los DBGrid y DBEdit ?? (se supone que a un DataSourse), pero estos estan a 1 Tabla o a un Query ???

no estoy seguro, pero creo que deberias conectar los DBGrid de cada Form a DataSourse distintos...

Trata de entregar más información

Salu2:p:D

M. FM. 22-08-2008 13:59:45

Hola:

Al final conseguí arreglarlo. Resulta que el problema era que yo trataba de hacer el SetFocus al crear la ventana, y tenía que ponerlo al activarla. Es decir, no en el FormCreate sino en el FormActivate.

Tanto rato dándole vueltas al asunto y al final resulta que era una tontería. Siempre pasa igual. :o

Muchas gracias


La franja horaria es GMT +2. Ahora son las 04:13:43.

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