2011-07-27 26 views
9

tôi hiển thị thông báo thông tin:NotifyIcon.ShowBalloonTip không giữ timeout

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

Nó sẽ hiển thị 29 000 mili giây, nhưng nó biến mất trong vòng chưa đầy một giây.

Tôi hiểu điều này được hệ điều hành kiểm soát. Nhưng phải có cách nào để tăng thời lượng của chương trình?

Sử dụng cửa sổ 7.

+1

Bằng cách nào đó có vẻ như thời gian chờ không làm việc trong Windows 7, gần giống như nó được ghi đè bởi các hệ điều hành. Windows XP dường như tôn trọng thời gian chờ. –

Trả lời

2

Nó phụ thuộc từ các thiết lập hệ điều hành, trong mỗi hệ điều hành nó là khác nhau. Cách tốt nhất là sử dụng baloon tự tạo.

2

Hãy chắc chắn rằng NotifyIcon có thể nhìn thấy trước khi hiển thị các khinh khí cầu:

notifyIcon.Visible = true; 
//then show the balloon tip 

Ngoài ra, nếu bất cứ lời khuyên bóng khác đang hiển thị, bạn sẽ bị bỏ qua.

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

10

Từ bài viết MSDN trên ShowBalloonTip

"tối thiểu và giá trị thời gian chờ tối đa được thi hành bởi các hệ điều hành và thường 10 đến 30 giây, tương ứng, tuy nhiên điều này có thể khác nhau tùy thuộc vào hệ điều hành Các giá trị timeout quá lớn hoặc quá nhỏ được điều chỉnh theo giá trị tối thiểu hoặc tối đa thích hợp.Ngoài ra, nếu người dùng dường như không sử dụng máy tính (không có sự kiện bàn phím hoặc chuột nào xảy ra) thì hệ thống không tính giá trị này thời gian chờ thời gian chờ. "

Bạn có thể đọc về toàn bộ chức năng dưới đây:

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

+2

Tôi đã đọc nó, đó là lý do tại sao tôi đặt 29000 ms (29 giây) –

0

Tôi biết đây là câu hỏi rất cũ để trả lời ngay bây giờ, Nhưng nó là để tham khảo trong tương lai và cho những độc giả sẽ đi qua câu hỏi này.

Vâng, tôi đã có cùng một vấn đề như đã đề cập trong câu hỏi trong một trong những ứng dụng Winform tôi và sau đó tôi đã xem qua Github liên kết này - Windows Toast Notifications

Có nó rất dễ dàng để tích hợp trong C# ứng dụng Winform của bạn. Tất cả những gì bạn phải làm là -

  • Tải xuống mã từ liên kết Github ở trên.
  • Thêm các tập tin lớp sau vào c ứng dụng # Winform bạn

    FormAnimator.cs

    NativeMethods.cs

  • Thêm Notifications.cs dạng để ứng dụng của bạn

  • Tạo một đối tượng biểu mẫu thông báo bánh mì nướng trong mã của dự án của bạn và gọi phương thức Show() để hiển thị nó.

Mẫu mã

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

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