4

我的应用程序是一个监视器,可以在用户离开时在后台运行,其目的是在发生某些更改时以视觉方式提醒用户。MessageBoxes 看起来有点讨厌,所以我认为 Balloon Tip 将完成任务而不会弄乱焦点,以防它们碰巧在做某事。

不幸的是,这个东西需要一个超时参数。我希望它无限期地停留,直到用户关闭它。

这可能吗?

4

2 回答 2

10

Windows 已经解决了这个问题。超时计数器在检测到键盘或鼠标输入之前不会开始计时。从 NotifyIcon.ShowBalloonTip 的备注部分:

此外,如果用户似乎没有在使用计算机(没有发生键盘或鼠标事件),则系统不会将此时间计入超时。

于 2010-11-22T17:02:51.667 回答
1

据我所知,不可能指定无限超时。

也就是说,如果您将超时设置为Int32.MaxValue,则工具提示将等待 2,147,484 秒,即大约 25 天。届时您的用户可能会注意到工具提示,或者他/她永远不会。

编辑: @Hans Passant 提到了一个系统设置,它为超时值设置了一个上限,所以......这可能根本行不通。反正他的回答更好。

于 2010-11-22T17:06:52.653 回答