Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2012-10

mostrar form encima del principal

15 messages · 5 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Paola Bruccoleri

Hola todos..
hace tiempo tuve esta inquietud pero luego nunca lo experiment� y ahora necesito hacerlo pero no lo logro.
Debo pedir una fecha al comenzar la aplicaci�n, pero por est�tica, me gusta que el form principal ya quede cargado y visible.

No lo hago en el .lpr porque sino se carga primero ese form de fecha y luego el principal, por tanto, decid� hacerlo en el form ppal, en el evento onshow.

procedure TfrmMain.FormShow(Sender: TObject);
var
   VQuery: TZQuery;
   loginfecha:TfrmFechaInicial;
begin
   // se pide la fecha
   loginfecha:= TfrmFechaInicial.Create(nil);
   if loginfecha.showmodal = mrOk then
     begin
       FreeAndNIL(loginfecha);
     end
   else
     Application.Terminate;
end;

Ese form de fecha tiene obviamente poca cosa: un dbedit para la fecha (debe quedar en una tabla), un bot�n aceptar (con modalresult: mrOk) y uno cancelar (mrCancel)
Si el usuario presiona CANCEL, yo quiero que la aplicaci�n se cierre.

El problema es:
- no se muestra el form principal primero sino el de la fecha primero
- Si presiono aceptar en el form de la fecha, nunca valida esto: if loginfecha.showmodal = mrOk then por tanto, la aplicacion siempre termina.

No creo que se pueda hacer con un spash porque la idea de los splash (creo) es mostrar alg�n form q se muestre mientras se carga la aplicaci�n. C�mo podr�a solucionarlo?
muchas gracias!

Reply by email

Paola Bruccoleri
to Paola Bruccoleri

El 08/10/2012 09:15 a.m., Paola Bruccoleri escribi�:

Show quoted text 41 lines
Hola todos.. hace tiempo tuve esta inquietud pero luego nunca lo experiment� y ahora necesito hacerlo pero no lo logro. Debo pedir una fecha al comenzar la aplicaci�n, pero por est�tica, me gusta que el form principal ya quede cargado y visible. No lo hago en el .lpr porque sino se carga primero ese form de fecha y luego el principal, por tanto, decid� hacerlo en el form ppal, en el evento onshow. procedure TfrmMain.FormShow(Sender: TObject); var VQuery: TZQuery; loginfecha:TfrmFechaInicial; begin // se pide la fecha loginfecha:= TfrmFechaInicial.Create(nil); if loginfecha.showmodal = mrOk then begin FreeAndNIL(loginfecha); end else Application.Terminate; end; Ese form de fecha tiene obviamente poca cosa: un dbedit para la fecha (debe quedar en una tabla), un bot�n aceptar (con modalresult: mrOk) y uno cancelar (mrCancel) Si el usuario presiona CANCEL, yo quiero que la aplicaci�n se cierre. El problema es: - no se muestra el form principal primero sino el de la fecha primero - Si presiono aceptar en el form de la fecha, nunca valida esto: if loginfecha.showmodal = mrOk then por tanto, la aplicacion siempre termina. No creo que se pueda hacer con un spash porque la idea de los splash (creo) es mostrar alg�n form q se muestre mientras se carga la aplicaci�n. C�mo podr�a solucionarlo? muchas gracias!

Hola de nuevo..
al final, coloqu� ese m�todo en el evento onActivate, pero me pasa algo bien raro. A pesar de que funciona como quiero, el form principal aparece con el tama�o que tiene en dise�o (tama�o mediano) y una imagen que coloqu� abajo a la derecha aparece fuera del form!

forc� el maximizado del form principal antes de mostrar el form de la fecha y ni bolilla le da! (de todas formas, en la propiedad ya est� colocado ese valor.)

procedure TfrmMain.FormActivate(Sender: TObject);
var
   loginfecha:TfrmFechaInicial;
begin
   frmMain.WindowState:= wsMaximized;
   loginfecha:= TfrmFechaInicial.Create(nil);
   if loginfecha.showmodal = mrOk then
     begin
       FreeAndNIL(loginfecha);
     end
   else
     Application.Terminate;
end;

Reply by email

José Mejuto
to Paola Bruccoleri

El 08/10/2012 14:47, Paola Bruccoleri escribi�:

Show quoted text 14 lines
al final, coloqu� ese m�todo en el evento onActivate, pero me pasa algo bien raro. A pesar de que funciona como quiero, el form principal aparece con el tama�o que tiene en dise�o (tama�o mediano) y una imagen que coloqu� abajo a la derecha aparece fuera del form! forc� el maximizado del form principal antes de mostrar el form de la fecha y ni bolilla le da! (de todas formas, en la propiedad ya est� colocado ese valor.) procedure TfrmMain.FormActivate(Sender: TObject); var loginfecha:TfrmFechaInicial; begin frmMain.WindowState:= wsMaximized;
      Application.DoEvents;
Show quoted text 9 lines
loginfecha:= TfrmFechaInicial.Create(nil); if loginfecha.showmodal = mrOk then begin FreeAndNIL(loginfecha); end else Application.Terminate; end;
Mete el DoEvents de arriba. Aunque yo lo que har�a ser�a iniciar el
formulario con Enabled:=false, y meter un Timer con un retardo de 1 ms.
que sea el que me muestre el "LoginFecha". Si el loginfecha es OK
entonces "Self.Enabled:=true".

Reply by email

Paola Bruccoleri
to José Mejuto

El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�:

Show quoted text 5 lines
El 08/10/2012 14:47, Paola Bruccoleri escribi�: > Application.DoEvents;

esto me da error q no existe; puse Application.ProcessMessages; y no me di� resultado

Show quoted text 5 lines
Aunque yo lo que har�a ser�a iniciar el formulario con Enabled:=false, y meter un Timer con un retardo de 1 ms. que sea el que me muestre el "LoginFecha". Si el loginfecha es OK entonces "Self.Enabled:=true".

no te entiendo mucho..
pongo el form ppal con enabled=false desde el dise�o..

no se para que ser�a el timer; o sea q efecto har�a..

y luego hago esto?
   loginfecha:= TfrmFechaInicial.Create(nil);
   if loginfecha.showmodal = mrOk then
     begin
       FreeAndNIL(loginfecha);
       frmMain.Enabled:= true;
     end
   else
     Application.Terminate;

sin el timer y haciendo esto.. igual queda mal el form ppal, no se maximiza

Reply by email

Paola Bruccoleri
to Paola Bruccoleri

El 08/10/2012 06:48 p.m., Paola Bruccoleri escribi�:

Show quoted text 31 lines
El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: > El 08/10/2012 14:47, Paola Bruccoleri escribi�: > >> > > Application.DoEvents; esto me da error q no existe; puse Application.ProcessMessages; y no me di� resultado > > Aunque yo lo que har�a ser�a iniciar el formulario con > Enabled:=false, y meter un Timer con un retardo de 1 ms. > que sea el que me muestre el "LoginFecha". Si el loginfecha es OK > entonces "Self.Enabled:=true". no te entiendo mucho.. pongo el form ppal con enabled=false desde el dise�o.. no se para que ser�a el timer; o sea q efecto har�a.. y luego hago esto? loginfecha:= TfrmFechaInicial.Create(nil); if loginfecha.showmodal = mrOk then begin FreeAndNIL(loginfecha); frmMain.Enabled:= true; end else Application.Terminate; sin el timer y haciendo esto.. igual queda mal el form ppal, no se maximiza

puse showmessages para ver q es lo que se va haciendo.

Prob� de poner:
   WindowState:= wsMaximized;
   Application.ProcessMessages;

en el oncreate, onshow y onactivate y nunca se maximiza el form ppal hasta que cierro el form de fecha .. o sea, al salir del onACTIVATE

Reply by email

Paola Bruccoleri
to Paola Bruccoleri

El 08/10/2012 08:21 p.m., Paola Bruccoleri escribi�:

Show quoted text 41 lines
El 08/10/2012 06:48 p.m., Paola Bruccoleri escribi�: > El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: >> El 08/10/2012 14:47, Paola Bruccoleri escribi�: >> >>> >> >> Application.DoEvents; > esto me da error q no existe; puse Application.ProcessMessages; y no > me di� resultado > >> >> Aunque yo lo que har�a ser�a iniciar el formulario con >> Enabled:=false, y meter un Timer con un retardo de 1 ms. >> que sea el que me muestre el "LoginFecha". Si el loginfecha es OK >> entonces "Self.Enabled:=true". > no te entiendo mucho.. > pongo el form ppal con enabled=false desde el dise�o.. > > no se para que ser�a el timer; o sea q efecto har�a.. > > y luego hago esto? > loginfecha:= TfrmFechaInicial.Create(nil); > if loginfecha.showmodal = mrOk then > begin > FreeAndNIL(loginfecha); > frmMain.Enabled:= true; > end > else > Application.Terminate; > > sin el timer y haciendo esto.. igual queda mal el form ppal, no se > maximiza puse showmessages para ver q es lo que se va haciendo. Prob� de poner: WindowState:= wsMaximized; Application.ProcessMessages; en el oncreate, onshow y onactivate y nunca se maximiza el form ppal hasta que cierro el form de fecha .. o sea, al salir del onACTIVATE

Hola de nuevo yo...

si en el onshow, coloco esto al ppio:

   frmMain.Height:= screen.Height - 50;
   frmMain.Width := screen.Width ;
   frmMain.Left:= 0;
   frmMain.Top:= 0;

(ese 50 es para que se vea la statusbar).. queda como si fuera minimizado... o sea, es la soluci�n "casera" q he encontrado, pero no me gusta !
quiero que quede maximizado :)
quiz�s sea alg�n bug viejo de esta versi�n, no se.. esto no puede ser tan complicado y no tiene ninguna ciencia.

Reply by email

Jose Daboin
to Paola Bruccoleri

Espera un momento, ya resolviste lo de maximizar la ventana del form1 y mostrar otro form2 como modal? porq a mi me funciono con un timmer

El 8 de octubre de 2012 18:16, Paola Bruccoleri
<pbruccoleri en adinet.com.uy>escribi�:

Show quoted text 74 lines
El 08/10/2012 08:21 p.m., Paola Bruccoleri escribi�: El 08/10/2012 06:48 p.m., Paola Bruccoleri escribi�: > >> El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: >> >>> El 08/10/2012 14:47, Paola Bruccoleri escribi�: >>> >>> >>>> >>> Application.DoEvents; >>> >> esto me da error q no existe; puse Application.ProcessMessages; y no me >> di� resultado >> >> >>> Aunque yo lo que har�a ser�a iniciar el formulario con Enabled:=false, >>> y meter un Timer con un retardo de 1 ms. >>> que sea el que me muestre el "LoginFecha". Si el loginfecha es OK >>> entonces "Self.Enabled:=true". >>> >> no te entiendo mucho.. >> pongo el form ppal con enabled=false desde el dise�o.. >> >> no se para que ser�a el timer; o sea q efecto har�a.. >> >> y luego hago esto? >> loginfecha:= TfrmFechaInicial.Create(nil); >> if loginfecha.showmodal = mrOk then >> begin >> FreeAndNIL(loginfecha); >> frmMain.Enabled:= true; >> end >> else >> Application.Terminate; >> >> sin el timer y haciendo esto.. igual queda mal el form ppal, no se >> maximiza >> > > puse showmessages para ver q es lo que se va haciendo. > > Prob� de poner: > WindowState:= wsMaximized; > Application.ProcessMessages; > > en el oncreate, onshow y onactivate y nunca se maximiza el form ppal > hasta que cierro el form de fecha .. o sea, al salir del onACTIVATE > Hola de nuevo yo... si en el onshow, coloco esto al ppio: frmMain.Height:= screen.Height - 50; frmMain.Width := screen.Width ; frmMain.Left:= 0; frmMain.Top:= 0; (ese 50 es para que se vea la statusbar).. queda como si fuera minimizado... o sea, es la soluci�n "casera" q he encontrado, pero no me gusta ! quiero que quede maximizado :) quiz�s sea alg�n bug viejo de esta versi�n, no se.. esto no puede ser tan complicado y no tiene ninguna ciencia. ______________________________**_________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>
*Saludos. Jose Daboin* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121008/121ad914/attachment.html>

Reply by email

Paola Bruccoleri
to Jose Daboin

El 08/10/2012 08:58 p.m., Jose Daboin escribi�:

Espera un momento, ya resolviste lo de maximizar la ventana del form1 y mostrar otro form2 como modal? porq a mi me funciono con un timmer

no, no lo resolv� como quer�a!
c�mo lo hicistes t�?

Reply by email

Jose Daboin
to Paola Bruccoleri

Primero que todo soy novato.

Pues al form1 le coloq un timer con retraso de 1 segundo, puedes probar con menos.

en el timer

timer1.Enabled:=false;
form2.Showmodal;

Justo asi porq si se coloca al reves el form explota XD.

el el boton cancelar del form2

application.Terminate;

y bueno lo demas ya lo sabes t�.

No se si esto es lo correcto pero a mi me funciona.

El 8 de octubre de 2012 18:40, Paola Bruccoleri
<pbruccoleri en adinet.com.uy>escribi�:

Show quoted text 16 lines
El 08/10/2012 08:58 p.m., Jose Daboin escribi�: Espera un momento, ya resolviste lo de maximizar la ventana del form1 y > mostrar otro form2 como modal? porq a mi me funciono con un timmer > > no, no lo resolv� como quer�a! c�mo lo hicistes t�? ______________________________**_________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.**freepascal.org<Lazarus-es en lists.lazarus.freepascal.org> http://lists.lazarus.**freepascal.org/mailman/**listinfo/lazarus-es<http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es>
*Saludos. Jose Daboin* ------------ pr�xima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121008/b03c18d5/attachment-0001.html>

Reply by email

José Mejuto
to Paola Bruccoleri: El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: esto me da error q no existe; puse…

El 08/10/2012 22:48, Paola Bruccoleri escribi�:

Show quoted text 8 lines
El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: > El 08/10/2012 14:47, Paola Bruccoleri escribi�: > >> > > Application.DoEvents; esto me da error q no existe; puse Application.ProcessMessages; y no me di� resultado

Es que estoy en Lazarus y Android a la vez y el DoEvents es en Android, vamos que me he liado.

no te entiendo mucho.. pongo el form ppal con enabled=false desde el dise�o.. no se para que ser�a el timer; o sea q efecto har�a.. y luego hago esto?

Dentro del timer lanzas el form y desconectas el timer claro.

Show quoted text 8 lines
loginfecha:= TfrmFechaInicial.Create(nil); if loginfecha.showmodal = mrOk then begin FreeAndNIL(loginfecha); frmMain.Enabled:= true; end else Application.Terminate;

Reply by email

Paola Bruccoleri
to José Mejuto

El 09/10/2012 06:01 a.m., Jos� Mejuto escribi�:

Show quoted text 29 lines
El 08/10/2012 22:48, Paola Bruccoleri escribi�: > El 08/10/2012 03:23 p.m., Jos� Mejuto escribi�: >> El 08/10/2012 14:47, Paola Bruccoleri escribi�: >> >>> >> >> Application.DoEvents; > esto me da error q no existe; puse Application.ProcessMessages; y no me > di� resultado Es que estoy en Lazarus y Android a la vez y el DoEvents es en Android, vamos que me he liado. > no te entiendo mucho.. > pongo el form ppal con enabled=false desde el dise�o.. > no se para que ser�a el timer; o sea q efecto har�a.. > y luego hago esto? Dentro del timer lanzas el form y desconectas el timer claro. > loginfecha:= TfrmFechaInicial.Create(nil); > if loginfecha.showmodal = mrOk then > begin > FreeAndNIL(loginfecha); > frmMain.Enabled:= true; > end > else > Application.Terminate;

bueno, al final sali�!
muchas gracias a todos...

byeeeeeeeeee

Reply by email

Jose Antonio. Cuello Principal
to Hilde Hansz

Hola, a�adido el objeto TfrBarCodeObject al formulario donde cargas el report? A mi me daba problemas si cargaba un report con c�digos de barras y no estaba ese objeto.

Un saludo

Earlier message 16 lines
----- Mensaje original ----- De: "Hilde Hansz" <hhansz en adinet.com.uy> Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviados: Martes, 23 de Octubre 2012 13:40:19 Asunto: [Lazarus-es] Bar-Code_39 en Lazreport o xml Estimados, estoy usando Bar-Code_39, no tengo problemas para visualizar en las grillas. Pero cuando visualizo el reporte creado con Lazreport o una planilla xml, NO SE VISUALIZA COMO CODIGO, SINO EL VALOR REAL. �Alguien ha tenido este problema?, �Alguien tiene una soluci�n? Gracias. hilde

Reply by email

Hilde Hansz
to Jose Antonio. Cuello Principal

Gracias, voy a probar!!!, luego te cuento.

De: Jose Antonio. Cuello Principal [mailto:jcuello en artextrading.com] Enviado el: martes, 23 de octubre de 2012 10:50 a.m. Para: Spanish version of Lazarus List
Asunto: Re: [Lazarus-es] Bar-Code_39 en Lazreport o xml

Hola, a�adido el objeto TfrBarCodeObject al formulario donde cargas el report? A mi me daba problemas si cargaba un report con c�digos de barras y no estaba ese objeto.

Un saludo

_____

De: "Hilde Hansz" <hhansz en adinet.com.uy>
Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviados: Martes, 23 de Octubre 2012 13:40:19
Asunto: [Lazarus-es] Bar-Code_39 en Lazreport o xml

Estimados, estoy usando Bar-Code_39, no tengo problemas para visualizar en las grillas. Pero cuando visualizo el reporte creado con Lazreport o una planilla xml, NO SE VISUALIZA COMO CODIGO, SINO EL VALOR REAL. �Alguien ha tenido este problema?, �Alguien tiene una soluci�n? Gracias.
hilde

Reply by email

Hilde Hansz
to Jose Antonio. Cuello Principal: Hola, a�adido el objeto TfrBarCodeObject al formulario donde cargas el report? A mi me…

Perfecto, much�simas gracias!!

hh

De: Jose Antonio. Cuello Principal [mailto:jcuello en artextrading.com] Enviado el: martes, 23 de octubre de 2012 10:50 a.m. Para: Spanish version of Lazarus List
Asunto: Re: [Lazarus-es] Bar-Code_39 en Lazreport o xml

Hola, a�adido el objeto TfrBarCodeObject al formulario donde cargas el report? A mi me daba problemas si cargaba un report con c�digos de barras y no estaba ese objeto.

Un saludo

_____

De: "Hilde Hansz" <hhansz en adinet.com.uy>
Para: "Spanish version of Lazarus List" <lazarus-es en lists.lazarus.freepascal.org> Enviados: Martes, 23 de Octubre 2012 13:40:19
Asunto: [Lazarus-es] Bar-Code_39 en Lazreport o xml

Estimados, estoy usando Bar-Code_39, no tengo problemas para visualizar en las grillas. Pero cuando visualizo el reporte creado con Lazreport o una planilla xml, NO SE VISUALIZA COMO CODIGO, SINO EL VALOR REAL. �Alguien ha tenido este problema?, �Alguien tiene una soluci�n? Gracias.
hilde

Reply by email