In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Duda con Notify

Foro público de Xailer en español
Responder
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Duda con Notify

Mensaje por juanc »

Hola Grupo, gusto en saludarlos:
Esperando que alguien ya se haya encontrado con mi duda:
No puedo lograr que el ejemplo que esta en samples de notifyicon inicie sin
mostrar la forma pero si el notify tal como si le hubiera dado click en
minimizar.
He puesto lo siguiente:
METHOD FormInitialize( oSender ) CLASS TForm1
::Minimize()
RETURN Nil
Tambien:
METHOD FormInitialize( oSender ) CLASS TForm1
::Hide()
::oNotifyIcon1:lVisible := .T.
::oNotifyIcon1:Show()
ProcessMessages()
RETURN Nil
Pero no va... alguien ya lo hizo ?
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Duda con Notify

Mensaje por jfgimenez »

Juan,
> No puedo lograr que el ejemplo que esta en samples de notifyicon inicie
> sin mostrar la forma pero si el notify tal como si le hubiera dado click
> en minimizar.
prueba a mostrar el formulario con:
TForm1():New( ... ):Show( SW_SHOWMINIMIZED )
Por otro lado, el mejor sitio para mostrar y ocultar el icono de
notificación al minimizar el programa es en el evento OnSize del formulario.
Sería algo así:
METHOD Form1Size( oSender, nSizeType, nClientWidth, nClientHeight ) CLASS
TForm1
IF nSizeType == SIZE_MINIMIZED
::oNotifyIcon1:Show()
ELSEIF nSizeType == SIZE_RESTORED
::oNotifyIcon1:Hide()
ENDIF
RETURN Nil
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Duda con Notify

Mensaje por jfgimenez »

Juan,
> WITH OBJECT TForm1():New(Application)
> :Show(SW_SHOWMINIMIZED)
> :Hide()
> :Create()
> END WITH
Prueba a quitar tanto :Show() como :Hide(). Por otro lado, la llamada a
:Create() es completamente innecesaria. Es más, en versiones antiguas te
hubiera dado incluso problemas.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Duda con Notify

Mensaje por juanc »

Muchas Gracias, voy a probar. Saludos Cordiales :-)
Juan
Castillo Arteaga.
"Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
news:49d1d357$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Juan,
>
>> No puedo lograr que el ejemplo que esta en samples de notifyicon inicie
>> sin mostrar la forma pero si el notify tal como si le hubiera dado click
>> en minimizar.
>
> prueba a mostrar el formulario con:
>
> TForm1():New( ... ):Show( SW_SHOWMINIMIZED )
>
> Por otro lado, el mejor sitio para mostrar y ocultar el icono de
> notificación al minimizar el programa es en el evento OnSize del
> formulario. Sería algo así:
>
> METHOD Form1Size( oSender, nSizeType, nClientWidth, nClientHeight ) CLASS
> TForm1
>
> IF nSizeType == SIZE_MINIMIZED
> ::oNotifyIcon1:Show()
> ELSEIF nSizeType == SIZE_RESTORED
> ::oNotifyIcon1:Hide()
> ENDIF
>
> RETURN Nil
>
>
> --
> Un saludo,
>
> José F. Giménez
> http://www.xailer.com
> http://www.xailer.info
>
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Duda con Notify

Mensaje por juanc »

Muchas gracias José ya hice la prueba, puse el codigo que sugieres en
Form1Size, pero el parametro de SW_SHOWMINIMIZED en el procedimiento Main al
compilar lo elimina, entonces viendo ejemplos de Xailer.Info y Objecto
Persistente quedo asi:
Procedure Main()
Application:cTitle := "NotifyIcon"
Application:lSingleInstance := .T.
Inicia()
Application:Run()
Return
Static Function Inicia()
WITH OBJECT TForm1():New(Application)
:Show(SW_SHOWMINIMIZED)
:Hide()
:Create()
END WITH
Return .T.
Se ve un parpadeo en la barra de tareas al ejecutar el programa, pero la
verdad no me molesta que quede asi :-)
>> prueba a mostrar el formulario con:
>>
>> TForm1():New( ... ):Show( SW_SHOWMINIMIZED )
>>
>> Por otro lado, el mejor sitio para mostrar y ocultar el icono de
>> notificación al minimizar el programa es en el evento OnSize del
>> formulario. Sería algo así:
>>
>> METHOD Form1Size( oSender, nSizeType, nClientWidth, nClientHeight ) CLASS
>> TForm1
>>
>> IF nSizeType == SIZE_MINIMIZED
>> ::oNotifyIcon1:Show()
>> ELSEIF nSizeType == SIZE_RESTORED
>> ::oNotifyIcon1:Hide()
>> ENDIF
>>
>> RETURN Nil
>>
>>
>> --
>> Un saludo,
>>
>> José F. Giménez
>> http://www.xailer.com
>> http://www.xailer.info
>>
>
>
juanc
Mensajes: 105
Registrado: Vie Dic 14, 2007 12:15 am

Duda con Notify

Mensaje por juanc »

Muchas Gracias José, vamos a probar. Saludos Cordiales.
"Jose F. Gimenez" <jfgimenez@wanadoo.es> escribió en el mensaje
news:49d26dd8$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Juan,
>
>> WITH OBJECT TForm1():New(Application)
>> :Show(SW_SHOWMINIMIZED)
>> :Hide()
>> :Create()
>> END WITH
>
> Prueba a quitar tanto :Show() como :Hide(). Por otro lado, la llamada a
> :Create() es completamente innecesaria. Es más, en versiones antiguas te
> hubiera dado incluso problemas.
>
> --
> Un saludo,
>
> José F. Giménez
> http://www.xailer.com
> http://www.xailer.info
>
Responder