Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-08-2005
Avatar de Durbed
Durbed Durbed is offline
Miembro
 
Registrado: ago 2004
Posts: 166
Poder: 20
Durbed Va por buen camino
Ventana Padre en aplicaion MDI con DBGrid de fondo

Hola, tengo un problema, la cuestion es que en mi aplicacion MDI necesito tener siempre abierta una ventana con DBGrid y poco mas, el caso es que queria poner ese Grid de fondo de mi aplicacion MDI, asignandole todo el area de cliente, y el caso es que funciona bien, pero luego al crear las diferentes ventanas hijas, se crean detras del DBGrid por lo que no son accesibles.

A ver si alguien sabe como arreglarlo. Gracias
__________________
Intentando hacer algo con Delphi 7 y Firebird 1.5
Responder Con Cita
  #2  
Antiguo 09-08-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.310
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo intentaría crear una ventana hija (MDI) con el Grid que se cree de forma automática al comenzar y controlar que:
* Siempre esté al fondo al crear otras ventanas (SendToBack)
* Que no se pueda cerrar (evento OnClose; Action=caNone)
* Que no se pueda minimizar
* Que no se pueda mover ni redimensionar (constraints o controlar el evento OnResize)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 09-08-2005
Avatar de Durbed
Durbed Durbed is offline
Miembro
 
Registrado: ago 2004
Posts: 166
Poder: 20
Durbed Va por buen camino
El problema es que al abrir varias fichas de clientes, (varias veces el mismo form FVerEditar con datos diferentes), si quiero actualizar, solo me conserva el ID_cliente del ultimo que he abierto (lo guardo un una variable global del FVerEditar), lo cual no entiendo porque pasa. Entonces para resolverlo se me habia ocurrido guargar en un vector de registros el Id_cliente y el numero de la ventana hija, pero si la creo desde otra ventana hija, el MDIChildCount siempre es 0. Para que el MDIChildCount funcione bien, las ventanas hijas se han de crear desde la ventana madre, por eso queria poner el DBGrid en el Formulario madre.

Gracias
__________________
Intentando hacer algo con Delphi 7 y Firebird 1.5
Responder Con Cita
  #4  
Antiguo 10-08-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.310
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
No he entendido nada.

Cita:
Empezado por Durbed
El problema es que al abrir varias fichas de clientes, (varias veces el mismo form FVerEditar con datos diferentes), si quiero actualizar, solo me conserva el ID_cliente
El ID de cada cliente debe estar asociado cada una de las ventanas que abres, si es necesario crea una propiedad en el form FVerEditar para almacernarlo.

Cita:
Empezado por Durbed
...lo guardo un una variable global del FVerEditar
Como ya te he dicho, tiene pinta de que esa variable global debes sustituirla por una propiedad del formulario, sino es lógico que en una variable sólo puedas almacenar el último valor.

Cita:
Empezado por Durbed
..Entonces para resolverlo se me habia ocurrido guargar en un vector de registros el Id_cliente y el numero de la ventana hija
Lo dicho en lugar de un ID y la ventana, guarda el ID en la ventana que toca (prop. del formulario)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 10-08-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Cita:
Empezado por Durbed
El problema es que al abrir varias fichas de clientes, (varias veces el mismo form FVerEditar con datos diferentes), si quiero actualizar, solo me conserva el ID_cliente del ultimo que he abierto
De aqui se deduce que las tablas las tienes en un Datamodule, y por tanto, solo puede haber 1 cliente activo cada vez, en cuanto hagas un Locate en el Datamodule, todas las ventanas hijas que tengan información de esa tabla, se moverá al mismo registro

Solución:
- Pon los TTables, IBtables o lo que sean, directamente en la ventana de clientes. Usas un TTable del Datamodule para ver el registro que quieres abrir, el ID del cliente, y al abrir la ventana hija, usas el TTable de la propia ventana.

Un saludo.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 10-08-2005
Avatar de Durbed
Durbed Durbed is offline
Miembro
 
Registrado: ago 2004
Posts: 166
Poder: 20
Durbed Va por buen camino
Neftali, mil gracias, con eso ya funciona a de maravilla. Respecto a lo que dice Lepe, no lo tenia así, tenia una variable global en el Form, pero solo guardaba el ultimo valor (ID_Cliente), al ponerlo como un atributo de la clase se ha resuelto. Para obtener los datos, hago una consulta Select y cargo los datos en los controles.

Un saludo y gracias
__________________
Intentando hacer algo con Delphi 7 y Firebird 1.5
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


La franja horaria es GMT +2. Ahora son las 13:12:33.


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