PDA

Ver la Versión Completa : Cannot Focus a disabled or invisible windows


EgyEgy
13-06-2011, 18:23:40
Espero poder explicarme.

Mi aplicacion tiene un datamodule, y un forma inicial. De ahí muestro otras formas según el boton que opriman.

En la forma que se muestra, es un simple mantenimiento utilizo TDBEdit's y un TDBNavigator. Todos estos componentes los conecto con el daset, conexion y data source del DAtamodule.

Me despliega los registros muy bien, avanzo o retrocedo y todo perfecto, inclusive puedo borrar registros,..peroooooooooooooooooo, cuando le doy agregar (al dbnavigator) me envia el error "Cannot focus a disabled o invisible windows".

¿como puede ser esto si el form ya esta mostrando (ah lo muestro con un Show)?, ya revise y pongo todos los dbedit en enable, y ademas esta visibles, por que los veo muy bien en modo consulta.

¿QUE PUEDE SER?

roman
13-06-2011, 18:49:10
El error no necesariamente se refiere a un formulario. Por lo general se refiere a un control dentro de un formulario.

Es posible que tengas asociado un evento AfterInsert o similar en el cual inetntas poner el foco del teclado en un control inhabilitado de este o de otro formulario.

// Saludos

maeyanes
13-06-2011, 18:51:29
Hola...

Verifica bien tu código, puede que un determinado momento algún componente esté deshabilidato o invisible y por código le quieras mandar el foco del teclado.


Saludos...

EgyEgy
13-06-2011, 20:15:11
El error no necesariamente se refiere a un formulario. Por lo general se refiere a un control dentro de un formulario.

Es posible que tengas asociado un evento AfterInsert o similar en el cual inetntas poner el foco del teclado en un control inhabilitado de este o de otro formulario.

// Saludos

Antes que nada "Gracias Roman".

En efecto tengo un beforinsert que tuve que declarar dentro del 2do formulario que abro, ya que como mencione tengo un datamodul y para que yo detecte y pueda habilitar mis tdbedit ha sido necesario "crearlo", pero bueno lo que simplemente hago es asignarlo a un procedure en el nuevo form.

pero lo curioso que si me lo hace en un otro formulario y tiene exactamente definidas los mismos procedures.

¿me puedes explicar nuevamente tu solucion?

EgyEgy
13-06-2011, 20:17:09
Hola...

Verifica bien tu código, puede que un determinado momento algún componente esté deshabilidato o invisible y por código le quieras mandar el foco del teclado.


Saludos...

Si Maeyanes, ya hice eso y la verdad que es pequeño el código que utiliza y todo parece correcto, es mas te menciono que tengo otra formulario pero le asigno otra tabla aunque ocupo el mismo dataset, conexcion y table, y si funciona ahi