Dialogo Sobre Dialogo
Dialogo Sobre Dialogo
Buenos Dias Amigos del Foro:
- Tengo un primer Dialogo como centro de operaciones.
- Si elijo ejecutar alguna operacion (por ejemplo numero 1). Esta operacion abre otro
Dialogo que no tiene caption, solo un formato con gets para llenar, y va como incrustada
hacia una parte del primer Dialogo.
- La pregunta:
- Si deseo que, el primer dialogo mantenga el color activo mientras lleno el formato
en el segundo dialogo, qué comando debo usar?
Gracias por Vuestras Sugerencias
Saludos
Julio César Gómez Cortéz
Godryc Experiencias
Lima - Perú
- Tengo un primer Dialogo como centro de operaciones.
- Si elijo ejecutar alguna operacion (por ejemplo numero 1). Esta operacion abre otro
Dialogo que no tiene caption, solo un formato con gets para llenar, y va como incrustada
hacia una parte del primer Dialogo.
- La pregunta:
- Si deseo que, el primer dialogo mantenga el color activo mientras lleno el formato
en el segundo dialogo, qué comando debo usar?
Gracias por Vuestras Sugerencias
Saludos
Julio César Gómez Cortéz
Godryc Experiencias
Lima - Perú
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Dialogo Sobre Dialogo
Julio,
Si el segundo diálogo es modal, no hay forma de que el diálogo anterior mantenga el color de activo.
Tendriais que usar un objeto TPanel en vez de un diálogo, para situar los GETs.
Si el segundo diálogo es modal, no hay forma de que el diálogo anterior mantenga el color de activo.
Tendriais que usar un objeto TPanel en vez de un diálogo, para situar los GETs.
- FranciscoA
- Posts: 1964
- Joined: Fri Jul 18, 2008 1:24 am
- Location: Chinandega, Nicaragua, C.A.
Re: Dialogo Sobre Dialogo
Saludos, Antonio.
No tengo la respuesta para tu pregunta.
Sin embargo desarrollé hace tiempo una pequeña aplicación que trabaja exactamente como lo describes.
El caso mio es que no he sido capaz de incrustar de manera automática el segundo dialog sobre el primero, en las coordenadas deseadas.
Claro que lo he solucionado "manualmente" aumentando o disminuyendo las coordenadas, hasta calzar. Pero "esto no es el chiste".
Estoy utilizando lo siguiente:
Como dije, las coordenadas +257 tengo que ponerla manualmente, ya que no obedece solamente a oDlgPadre:nLeft, que es lo que quiero,
ya que al cambiar de monitor con resolucion diferente, se distorciona la posicion a la izquierda. Es decir oDlgPadre:nTop+305 trabaja bien,
no así oDlgPadre:nLeft. Bueno, el nTop+305 tambien lo pongo manualmente pero funciona, no así el nLeft.
Tambien se pierde la coordenada nLeft, si muevo antes el primer dialog.
Podrías mostrar como lo has hecho?
Algún otro amigo del foro?
Saludos.
Julio César.Maggiro wrote: Buenos Dias Amigos del Foro:
- Tengo un primer Dialogo como centro de operaciones.
- Si elijo ejecutar alguna operacion (por ejemplo numero 1). Esta operacion abre otro
Dialogo que no tiene caption, solo un formato con gets para llenar, y va como incrustada
hacia una parte del primer Dialogo.
No tengo la respuesta para tu pregunta.
Sin embargo desarrollé hace tiempo una pequeña aplicación que trabaja exactamente como lo describes.
El caso mio es que no he sido capaz de incrustar de manera automática el segundo dialog sobre el primero, en las coordenadas deseadas.
Claro que lo he solucionado "manualmente" aumentando o disminuyendo las coordenadas, hasta calzar. Pero "esto no es el chiste".
Estoy utilizando lo siguiente:
Code: Select all
Function ModifEntrada(oDlgPadre)
-----
DEFINE DIALOG oDlg RESOURCE "CAPTAENTRADA" //dialog sin caption
REDEFINE GET....
....
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT ( oDlg:SetSize(oDlgPadre:nWidth-6,oDlgPadre:nHeight-190), oDlg:Move(oDlgPadre:nTop+305,oDlgPadre:nLeft+257) )
return nil
ya que al cambiar de monitor con resolucion diferente, se distorciona la posicion a la izquierda. Es decir oDlgPadre:nTop+305 trabaja bien,
no así oDlgPadre:nLeft. Bueno, el nTop+305 tambien lo pongo manualmente pero funciona, no así el nLeft.
Tambien se pierde la coordenada nLeft, si muevo antes el primer dialog.
Podrías mostrar como lo has hecho?
Algún otro amigo del foro?
Saludos.
Francisco J. Alegría P.
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Re: Dialogo Sobre Dialogo
Sr Antonio:
Lo que veo en los dialogos es que al quedar desactivado
el dialogo anterior, el color de fondo permanece inalterable:
solo el caption queda en color inactivo
Lo que veo en los dialogos es que al quedar desactivado
el dialogo anterior, el color de fondo permanece inalterable:
solo el caption queda en color inactivo
Re: Dialogo Sobre Dialogo
Hola Francisco:
Sobre tu pregunta ...
- Uso coordenadas fijas ya calculadas para el lugar donde se presenta el dialogo
incrustado.
- con la clausula OF oWnd en el segundo dialogo, éste queda dependiente del primero
se mueva donde se mueva el primero, se mueve todo.
Saludos
Sobre tu pregunta ...
- Uso coordenadas fijas ya calculadas para el lugar donde se presenta el dialogo
incrustado.
- con la clausula OF oWnd en el segundo dialogo, éste queda dependiente del primero
se mueva donde se mueva el primero, se mueve todo.
Saludos
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Dialogo Sobre Dialogo
Julio,
Ese cambio de color del título es un comportamiento por defecto de Windows.
Ese cambio de color del título es un comportamiento por defecto de Windows.
Re: Dialogo Sobre Dialogo
Julio,
Otra solucion seria:
1. Colocar los controles del segundo dialogo en el primer dialogo (en la posicion que quieres que aparescan) y ocultarlos.
2. Hacer que aparescan vajo cierta condicion, y se deshabiliten los otros (los del primer dialogo).
Espero te ayude.
Atentamente,
Rolando.
Cochabamba, Bolivia
Otra solucion seria:
1. Colocar los controles del segundo dialogo en el primer dialogo (en la posicion que quieres que aparescan) y ocultarlos.
2. Hacer que aparescan vajo cierta condicion, y se deshabiliten los otros (los del primer dialogo).
Espero te ayude.
Atentamente,
Rolando.
Cochabamba, Bolivia
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Dialogo Sobre Dialogo
Rolando,
Muy buena sugerencia
Muy buena sugerencia
Re: Dialogo Sobre Dialogo
João Santos - São Paulo - Brasil
- FranciscoA
- Posts: 1964
- Joined: Fri Jul 18, 2008 1:24 am
- Location: Chinandega, Nicaragua, C.A.
Re: Dialogo Sobre Dialogo
Gracias a todos. Lo he solucionado asi.
Saludos.
Code: Select all
Function ModifEntrada(oDlgPadre)
local oRec := oDlgPadre:GetRect()
-----
DEFINE DIALOG oDlg RESOURCE "CAPTAENTRADA" //dialog sin caption
REDEFINE GET....
....
ACTIVATE DIALOG oDlg CENTERED ;
ON INIT ( oDlg:SetSize(oDlgPadre:nWidth-6,oDlgPadre:nHeight-190), oDlg:Move(oRec:nBottom-oDlg:nHeight,oRec:nLeft+3) )
return nil
Francisco J. Alegría P.
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql
Chinandega, Nicaragua.
Fwxh1204-MySql-TMySql