我写了一些代码来创建提醒。它应该在上午10点通过通知警告我。为了实现这一点,我创建了一个DateTime对象作为DateTime.Now以获取本地时间,并且我使用计时器检查每一分钟是否与我想要被警告的时间相同。问题是我的应用程序仅在表单加载时通知我,但是当时间到来并且应用程序已经运行时它不会通知我。 我会留下下面的代码。提前谢谢。
public partial class Form1 : Form
{
NotifyIcon notify;
DateTime now;
public Form1()
{
InitializeComponent();
notify = new NotifyIcon()
{
Visible = true,
Icon = Properties.Resources.icon,
BalloonTipTitle = this.Text
};
now = DateTime.Now;
}
private void Form1_Load(object sender, EventArgs e)
{
timer1.Start();
}
private void notification()
{
while(true)
{
if (now.Hour.Equals(10) && now.Minute.Equals(30))
{
notify.BalloonTipText = "It's 10:30 am";
notify.ShowBalloonTip(3000);
timer1.Stop();
notify.Dispose();
}
}
}
private void timer1_Tick(object sender, EventArgs e)
{
notification();
}
}
答案 0 :(得分:2)
从a
移除while(true)
循环。你有定时调用notification
的定时器 - 现在你在第一次打勾后无限地检查时间。
notification
,而不是在启动时。
now