2011-07-27 33 views
9

muestro notificar información:NotifyIcon.ShowBalloonTip no mantiene el tiempo de espera

notifyIcon.ShowBalloonTip(29000, "title", "message", ToolTipIcon.Info); 

Debe mostrar 29 000 milisegundos, pero desaparece en menos de un segundo.

Entiendo que esto es controlado por el sistema operativo. Pero debería haber una manera de aumentar la duración del espectáculo?

utilizar Windows 7.

+1

De alguna manera parece que el tiempo de espera no funciona en Windows 7, casi como si se anula por el sistema operativo. Windows XP parece respetar el tiempo de espera. –

Respuesta

2

Depende de las configuraciones del sistema operativo, en cada sistema operativo es diferente. La mejor manera es usar un balón creado por uno mismo.

10

Desde el artículo MSDN en ShowBalloonTip

"valores máximos de tiempo de espera mínimo y son impuestas por el sistema operativo y son típicamente de 10 y 30 segundos, respectivamente, sin embargo esto puede variar dependiendo del sistema operativo Los valores de tiempo de espera que son demasiado grandes o demasiado pequeños se ajustan al valor mínimo o máximo apropiado. Además, si el usuario no parece estar usando la computadora (no ocurren eventos de teclado o mouse), entonces el sistema no cuenta esto. tiempo hacia el tiempo de espera ".

se puede leer sobre toda la función a continuación:

http://msdn.microsoft.com/en-us/library/ms160064.aspx

+2

Lo leí, por eso pongo 29000 ms (29 sec) –

0

Sé que esta es una pregunta muy vieja para responder ahora, pero es para futuras referencias y para aquellos lectores que se encuentren con esta pregunta.

Bueno, yo tenía el mismo problema que se menciona en la pregunta en una de mi aplicación WinForm y luego me encontré con este Github enlace - Windows Toast Notifications

Sí, es muy fácil de integrar en su aplicación # WinForm c. Lo único que tiene que hacer es -

  • Descargue el código del enlace anterior de Github.
  • añadir los archivos de clase siguientes a su aplicación # WinForm c

    FormAnimator.cs

    NativeMethods.cs

  • Añadir los Notifications.cs forma a su aplicación

  • Crear un objeto de formulario de notificación de brindis en el código de su proyecto y llame al método Show() para mostrarlo.

Código de ejemplo

var toastNotification = new Notification 
(
    "My Notification", 
    message, 
    durationsTime, 
    FormAnimator.AnimationMethod.Slide, 
    FormAnimator.AnimationDirection.Up 
); 

//PlayNotificationSound("normal"); 
toastNotification.Show(); 
Cuestiones relacionadas