Ir al contenido


Foto

¿Cómo determino si la aplicación o Forma está minimizado?


  • Por favor identifícate para responder
30 respuestas en este tema

#21 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 17 agosto 2009 - 07:52

Hola
Pregunto:
Como añado un item al popup?
Solo me falta eso.
Saludos
  • 0

#22 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4.483 mensajes
  • LocationVenezuela

Escrito 17 agosto 2009 - 07:56

segun puedo ver y en mis pocos conocimientos, el procedure debe estar interrumpiendo el mensaje, y seguro esta esperando que este vuelva a ser asignado...

lo que no se es como codificarlo... y cual seria la variable que recibe el mensaje.
  • 0

#23 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 17 agosto 2009 - 07:57

¿Y porque no dejar que el popup funcione también con la ventana maximizada?... asi como trabaja Winamp por ejemplo, es una idea, no por dejar el code, sino por cuestiones de usabilidad :D


Es que me gustarí­a ambas opciones, o sea, dar la facilidad al usuario de elegir si quiere que se vea el popup estando de ambas formas o sólo minimizado. ;)

Saludos.
  • 0

#24 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4.483 mensajes
  • LocationVenezuela

Escrito 17 agosto 2009 - 08:23

segun puedo ver y en mis pocos conocimientos, el procedure debe estar interrumpiendo el mensaje, y seguro esta esperando que este vuelva a ser asignado...

lo que no se es como codificarlo... y cual seria la variable que recibe el mensaje.




delphi
  1. procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
  2. begin
  3.   if Msg.CmdType = SC_MINIMIZE then
  4.     Minimizado := True
  5.   else
  6.     Minimizado := False;
  7.   inherited;
  8. end;



faltaba que colocaras el inherited; para que se ejecute el resto del metodo :D:D
  • 0

#25 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 17 agosto 2009 - 08:31

Hola
Bueno, aunque no me hacéis nada de caso : he seguido insistiendo.
En este ejemplo modificado puse un timer para hacer la prueba.
Lo que hace es que al estar minimizado el form en cinco segundos exactamente en la posicion del raton sale el popup, osea avisa.
A ver si te sirve de algo amigo, ya se que es de novato pero hago el intento. :D ;)
Saludos

Archivos adjuntos


  • 0

#26 pcicom

pcicom

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 267 mensajes
  • LocationMéxico

Escrito 17 agosto 2009 - 08:40

Existe un componente llamado msnpopup, es muy simple de utilizar y no importa si esta minimizada, maximizada u oculta tu aplicacion...


MSNPOPUP..

Como no encontre como anexar archivo...  te lo devo o mandame un correo y te lo envio..
joseph@pcicom.net


  • 0

#27 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 18 agosto 2009 - 06:39



delphi
  1. procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
  2. begin
  3.   if Msg.CmdType = SC_MINIMIZE then
  4.     Minimizado := True
  5.   else
  6.     Minimizado := False;
  7.   inherited;
  8. end;



faltaba que colocaras el inherited; para que se ejecute el resto del metodo :D:D


Vale haré las pruebas :D, luego os comento, amigo Caral, habí­a dicho que a pesar de no ser lo que ando buscando me será útil para otro tipo de vento en la misma aplicación :D (y), amigo PCicom, muchas por el componente, aquí­ hay una zona de descargas disponible donde podrás anexar el componente, puedes subirla aquí­.

Saludos.
  • 0

#28 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 18 agosto 2009 - 11:40

Hice las pruebas de ensayo ya que no tengo mi aplicacií­n aquí­, y pues sí­, ahora sí­ minimiza, maximiza, Restaura y Cierra a través de los botones superiores derecho, muchas gracias eduarcol, ahora tengo otra pregunta relacionada, cuando está minimizada ya saben que hay darle click en la barra y/o a través contextual, quisiera saber cómo capturar esa acción.

Saludos.
  • 0

#29 JoAnCa

JoAnCa

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 775 mensajes
  • LocationPinar del Río, Cuba

Escrito 20 agosto 2009 - 06:37

Hola enecumene
Ya resolviste tu problema?, igual te interese esta unit que hace que aparezca un popup estilo MSN, es de nuestro amigo dec de Clubdelphi



delphi
  1. unit UMsgPopup;
  2.  
  3. interface
  4.  
  5. uses
  6.   Forms, StdCtrls, Windows, Classes, Graphics;
  7.  
  8. procedure MsgPopup(const msg: string; const wait: integer);
  9.  
  10. implementation
  11.  
  12. procedure MsgPopup(const msg :string; const wait: integer);
  13. var
  14. i,max  :integer;
  15. lbMsg  :TLabel;
  16. fmMsg  :TForm;
  17. panel  :TRect;
  18.  
  19. begin
  20. fmMsg:=TForm.Create(nil);
  21. try
  22.   with fmMsg do  // El Formulario
  23.     begin
  24.     Color:=clWhite;
  25.     Caption:=' '+msg;
  26.     SystemParametersInfo(48, 0, @panel, 0);
  27.     Width:=350; Height:=110;
  28.     Top:=panel.Bottom; Left:=panel.Right-fmMsg.Width-2;
  29.     BorderStyle:=bsToolWindow;
  30.     FormStyle:=fsStayOnTop;
  31.     lbMsg:=TLabel.Create(fmMsg);
  32.     max:=panel.Bottom-fmMsg.Height-2;
  33.     with lbMsg do    // La Etiqueta
  34.       begin
  35.         Top:=30; Left:=10;
  36.         Height:=30;
  37.         Parent:=fmMsg;
  38.         AutoSize:=false;
  39.         Caption:=msg;
  40.         Font.Size:=14;
  41.         Font.Name:='Arial';
  42.         Font.Color:=clRed;
  43.         Alignment:=taCenter;
  44.         Font.Style:=[fsBold];
  45.         Width:=fmMsg.Width;
  46.       end ;
  47.     Show;
  48.     i:=Top;
  49.     while(i >= max)do
  50.       begin
  51.         Top:=i;
  52.         Dec(i,2);
  53.         Refresh;
  54.       end;
  55.     end;
  56. finally
  57.   Sleep(wait);
  58.   fmMsg.Free;
  59. end;
  60. end;
  61.  
  62. end.



Solo te quedarí­a adecuarla un poco si no se ajusta exactamente

  • 0

#30 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 20 agosto 2009 - 06:52

Gracias JoAnca, lo probaré luego.

Saludos.
  • 0

#31 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 29 agosto 2009 - 06:23

Amigos, ¿algunos de ustedes conocen el mensaje de la API que indica que he maximizado la aplicación desde la barra de tareas?, ya sea desde el menú o haciendo click.  *-)  *-)
  • 0




IP.Board spam blocked by CleanTalk.