2

我的项目有一个名为 inHour 的字符串设置,在主窗体中,用户可以更改该字符串,这是一个特定的小时和分钟格式:hh:mm tt。

现在,假设我已将默认时间更改为下午 4:50 当实时到达该字符串时(通过使用 DateTime.Now.ToString("hh:mm tt") == inHour),系统托盘中会显示一个气球提示(通过使用 notifyIcon)。

因此,比较时间条件是在 FormLoad 处启动的线程内。如果时间到达下午 4:50,气球提示会显示,但它仍然可见,因为线程没有停止。

我尝试将 int 设置为 0,然后将其设置为 i++,所以我使用了一个 while 条件,检查 while int i 是否不等于 0,它将检查是否是显示气球提示的时间,但如果我设置然后 i 为0 线程将不会继续,如果我更改小时再次测试它不会工作,因为 i 等于 0 并且没有再次设置为无限。

那么我怎样才能找到一种方法来检查时间,显示气球提示并重新开始所有过程呢?

提前谢谢,建行

4

1 回答 1

3

Timer与其检查一个循环并捆绑整个线程,不如使用在正确时间触发的 a 更有效。这个问题基本上回答了您的问题,并拥有您需要的所有相关信息。

于 2015-08-10T23:21:26.923 回答