PDA

Ver la Versión Completa : volver al form hijo


anubis
03-09-2014, 06:01:22
Hola, la verdad no sabia muy bien como poner en el titulo del post :(.

Tengo el form principal y de ahi, como cosa normal, al pulsar un boton me aparece otro form el cual llamo con

form2.showmodal;

Hasta ahi todo bien, pero si, teniendo abierto el form2 quedando el form principal detras abro otro programa como excel por ejemplo, al volver a mi programa me desaparece el form2 quedando el form principal a la vista pero sin poder hacer nada puesto que el control esta sobre form2. Para poder recuperar el form2 en activo tengo que pulsar alt+tab hasta que doy con el. En la barra de tareas no aparece esa otra ventana.

Lo que pregunto es si hay alguna forma de que, al recuperar el programa me aparezca el form2 de forma automatica y sin tener que hacer nada.

gracias de nuevo

anubis
03-09-2014, 07:03:22
Como no puedo editar el post, me respondo a mi mismo.

En principio lo he solucionado con

form2.formstyle:=fstayontop

En principio lo he solucionado asi, salvo que, cuando llamo desde ese form a otro le tengo que poner


form2.formstyle:=fsnormal

y cuando le devuelve el control le vuelvo a poner como estaba.

Funcionar funciona, aunque no se si es la forma apropiada. Ahora me queda ver como recupero

frreport.printpreview del lazreport porque se pierde :(.

engranaje
03-09-2014, 09:12:41
Tengo una duda a este respecto, lo cierto es que me interesa el asunto y en delphi me encontrado con problemas de este tipo. Hasta donde yo sé el orden de las ventanas es el zorder pero según la versión de windows, o el parche que se tenga ese zorder puede establecerse de forma distinta, de hecho si no me equivoco la semana pasada han vuelto a lanzar un parche que vuelve a cambiar el funcionamiento de la api a este respecto.

Entiendo que estas trabajando en Lazarus por lo que podras compilar el ejecutable para distintos SO. Me temo que cuando me he enfrentado a este problema siempre ha sido con windows y siempre he tenido que recurrir a la api. Me gustaría saber si trabajas sobre distitnos SO y si el funcionamiento en lo que respecta al "zorder" es igual independientemente del so para el que se compile y sobre el que se ejecute.

anubis
04-09-2014, 00:40:21
la verdad, en Lazarus hice alguna cosa pequeña pero como no hay "mercado" donde usarlo solo en Linux. El comportamiento de diferentes componentes es algo diferente en Linux y window(mac no lo se laverdad) pero respecto al zorder no lo he probado.
en líneas generales todo es cuestión de probar

chekok
02-10-2014, 19:03:18
Hola, he probado lo que comentas en la entrada de llamar al fomulario "hijo" con showmodal y en ningún momento me ha ocurrido lo que comentas, funciona perfectamente.

Lo he probado tanto en Windows (Windows7 32bits) como en Linux (Lubuntu 14.4 32bits). No soy capaz de reproducir tu problema (que la ventana hija quede por detrás si ha sido abierta en modal) de ninguna manera.

Yo estoy utilizando CodeTyphon 5.0 (es un porte vitaminado de Lazarus) y los controles estandar, ¿que versión de Lazarus estás usando? ¿Estás utilizando controles estandar o de terceros?

Un saludo!!!

chekok
03-10-2014, 10:26:57
Hola, esta es mi primera entrada en el foro y no sé si es del todo correcta. Estoy iniciándome en la programación con Lazarus y tengo una duda existencial en lo referente a la conexión con bases de datos.
No tengo claro qué controles usar, si los Zeos (por lo que he podido ver son los que utiliza casi todo el mundo) o los que trae por defecto Lazarus.
He hecho pruebas con ambos y me encuentro una serie de pegas entre ellos que no me dejan decidirme.

Por ejemplo, en los controles Zeos tengo la propiedad Order para poder cambiar por ejemplo el orden de presentación de los datos en un grid (ascendente o descendente), pero dicha propiedad no existe en los que Lazarus trae por defecto, por lo que ya no puedo ordenar fácilmente, tengo que tirar de código.

La longitud de cada campo de la tabla de la bases de datos me la coge perfectamente si utilizo los controles por defecto, pero por contra si utilizo los Zeos me carga una longitud 4 veces superior a la real en todos los casos, teniendo que cargar todas las longitudes a mano a fin de evitar errores al guardar en la base de datos.

Compatibilidad de los controles en caso de actualizaciones del IDE de Lazarus, etc.

Esos son ejemplos de las distintas pegas que me estoy encontrando y pido consejo o ayuda para solucionarlas o que me indiquen qué controles debo elegir o sus respectivos pros y contras para poder decidir ahora que estoy empezando.

Gracias de antemano.