Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-10-2013
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 513
Poder: 19
Neeruu Va por buen camino
Problemas con el Focus de un Form MDI Child -Delphi 201'0

¿Donde esta el Focus?

Les comento el siguiente caso haber si a alguien mas le paso y si se les ocurre como puedo solucionarlo...

Tengo una grilla en un formulario, (yo utilizo la cxGrid), en esta grilla yo cargo datos, cuando hago con la flecha del teclado para abajo, se graba el registro y automáticamente se hace el append para que pueda seguir cargando una nueva linea....

Aveces, según los valores ingresados en la grilla, en el beforePost de mi query, se ejecuta una validación que muestra un messageDlg...
el usuario hace click en aceptar y sigue.

Este proceso lo tenia funcionando en delphi 7, tal cual lo comento sin ningún problema.... ahora lo estoy migrando a delphi 2010 y me encuentro con el siguiente problema:

Resulta que cuando se me muestra le messagedlg, el foco no vuelve a la grilla... esto solo pasa si el formulario que contiene la grilla es un mdichild....
Si es un formulario común el foco vuelve a la grilla, que quedo en estado de append esperando para cargar...

Si alguien quiere reproducir el ejemplo describo los pasos a seguir según yo para poder ver la anomalía:

Crear un proyecto nuevo, al formulario de inicio ponerlo como MDIForm, agregar un Menú y hacer que desde el menú se abra un segundo formulario que es el que contendrá la cxgrid...
En se segundo formulario, agregar una cxgrid, enlazarla a alguna fuente de datos (Puede ser a una cxMemData) y en el evento BeforePost agregar un messagedlg o showmessage...

Y verán que cuando graban la, grilla, queda sin el foco...
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #2  
Antiguo 09-10-2013
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 513
Poder: 19
Neeruu Va por buen camino
Adjunto algunas pruebas...
Pruebas

He llegado a determinar que el caso se da, cuando ejecuto un exe creado en 2010 en Windows Seven.

Exe Creado en: WinXP WinSeven
Delphi 7 OK OK
Delphi 2010 OK FAIL

Alguna idea?

Aclaro que para generar los exe se utilizo los mismos fuentes, con la misma versión de devExpress.
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #3  
Antiguo 09-10-2013
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 513
Poder: 19
Neeruu Va por buen camino
Agrego un tercer ejemplo, en este caso abro un ventana, simuladora de un messagedlg y el foco es recobrado por la grilla perfectamente....

Sigo sin entender porque con un ShowMessage o un MessageDlg el foco no vuelve a la cxGrid

Otro Ejemplo
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
  #4  
Antiguo 09-10-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Neeruu.

No tengo Delphi 2010 ni los componentes que usas, pero mirando tu código te sugiero que pruebes agregando la siguiente lína al finalizar el evento OnNewRecord:
Código Delphi [-]
...
  RxDBGrid1.SetFocus;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 09-10-2013
Neeruu Neeruu is offline
Miembro
 
Registrado: oct 2007
Posts: 513
Poder: 19
Neeruu Va por buen camino
Lo que pasa que la parte de datos lo tengo en un datamain, y los datos enlazados a la grilla no siempre se cargan en la grilla... por eso no puedo llamar desde mi modulo de datos al setfocus de la grilla....

En los rar que comparti estan los exe... les sucede lo mismo en win seven?
__________________
Saluda Atte Neeruu!!! :)
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Ocultar Form fsmdi Child verito_83mdq OOP 11 08-01-2011 03:45:54
mdi form and child ale21alito Varios 9 07-02-2008 01:04:05
Como cargar un MDI Child de Delphi en un MDI Form de VC++ onlytk Varios 0 10-12-2006 03:15:31
Menú en form child supermilloriver OOP 2 12-09-2006 13:51:20
Crear un MDI child form sin mostrarlo Neomanar OOP 2 09-09-2005 16:22:11


La franja horaria es GMT +2. Ahora son las 20:36:58.


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
Copyright 1996-2007 Club Delphi