C# 制作具有多个闹钟时间的闹钟
我想做一个可编程的闹钟。它应该在不同的时刻输出旋律(.wav)。我用一个用户控件制作了一个数字时钟。我有一个计时器,每秒钟显示一个进度条,还有一个按钮启动进程。我确切地知道我想要的时间,所以我不需要任何其他按钮。我做了一些函数来完成我需要的时间C# 制作具有多个闹钟时间的闹钟,c#,C#,我想做一个可编程的闹钟。它应该在不同的时刻输出旋律(.wav)。我用一个用户控件制作了一个数字时钟。我有一个计时器,每秒钟显示一个进度条,还有一个按钮启动进程。我确切地知道我想要的时间,所以我不需要任何其他按钮。我做了一些函数来完成我需要的时间 public void suna3() { userControl11.Ora = 01; userControl11.Min = 37; userControl11.Sec = 50; } 按一下按钮,我给他们打电话。但当我启
public void suna3()
{
userControl11.Ora = 01;
userControl11.Min = 37;
userControl11.Sec = 50;
}
按一下按钮,我给他们打电话。但当我启动程序时,它只占用我最后一次(最后一个函数)。我怎样才能让它承担所有的功能
private void button3_Click(object sender, EventArgs e)
{
userControl11.Activ = true;
suna1();
userControl11.Activ = true;
suna2();
}
对于每个报警时间,您都需要一个
usercontrol
,或者更改您的用户控件,以便在一段时间内触发报警
对于多个usercontrol
实例,您的代码可能如下所示:
public void suna1()
{
userControl11.Ora = 02;
userControl11.Min = 27;
userControl11.Sec = 20;
}
//...
public void suna3()
{
userControl13.Ora = 01;
userControl13.Min = 37;
userControl13.Sec = 50;
}
public void suna1()
{
userControl11.Alarms.Add(new Alarm() { Ora = 02, Min = 27, Sec = 20 };
//or "userControl1.AddAlarm(2, 27, 20);" if you go the method route
}
//...
public void suna3()
{
userControl11.Alarms.Add(new Alarm() { Ora = 01, Min = 37, Sec = 50 };
}
另一种方法是更改usercontrol
,使其接受时间列表,或具有AddAlarm()
方法。大概是这样的:
public void suna1()
{
userControl11.Ora = 02;
userControl11.Min = 27;
userControl11.Sec = 20;
}
//...
public void suna3()
{
userControl13.Ora = 01;
userControl13.Min = 37;
userControl13.Sec = 50;
}
public void suna1()
{
userControl11.Alarms.Add(new Alarm() { Ora = 02, Min = 27, Sec = 20 };
//or "userControl1.AddAlarm(2, 27, 20);" if you go the method route
}
//...
public void suna3()
{
userControl11.Alarms.Add(new Alarm() { Ora = 01, Min = 37, Sec = 50 };
}
对于每个报警时间,您都需要一个
usercontrol
,或者更改您的用户控件,以便在一段时间内触发报警
对于多个usercontrol
实例,您的代码可能如下所示:
public void suna1()
{
userControl11.Ora = 02;
userControl11.Min = 27;
userControl11.Sec = 20;
}
//...
public void suna3()
{
userControl13.Ora = 01;
userControl13.Min = 37;
userControl13.Sec = 50;
}
public void suna1()
{
userControl11.Alarms.Add(new Alarm() { Ora = 02, Min = 27, Sec = 20 };
//or "userControl1.AddAlarm(2, 27, 20);" if you go the method route
}
//...
public void suna3()
{
userControl11.Alarms.Add(new Alarm() { Ora = 01, Min = 37, Sec = 50 };
}
另一种方法是更改usercontrol
,使其接受时间列表,或具有AddAlarm()
方法。大概是这样的:
public void suna1()
{
userControl11.Ora = 02;
userControl11.Min = 27;
userControl11.Sec = 20;
}
//...
public void suna3()
{
userControl13.Ora = 01;
userControl13.Min = 37;
userControl13.Sec = 50;
}
public void suna1()
{
userControl11.Alarms.Add(new Alarm() { Ora = 02, Min = 27, Sec = 20 };
//or "userControl1.AddAlarm(2, 27, 20);" if you go the method route
}
//...
public void suna3()
{
userControl11.Alarms.Add(new Alarm() { Ora = 01, Min = 37, Sec = 50 };
}
我认为问题在于,您对三个不同的事件使用相同的计时器,将其设置更改了三次。这只会导致使用最终设置-旧设置不会被记住-它们会被覆盖
解决方案是为每个事件创建一个新的计时器,每个计时器都有各自的设置。我认为问题在于,您对三个不同的事件使用相同的计时器,将其设置更改三次。这只会导致使用最终设置-旧设置不会被记住-它们会被覆盖
解决方案是为每个事件创建一个新的计时器,每个计时器都有各自的设置。我不理解您的问题。你们能说得更清楚一点吗?你们想让它多次做什么?是否同时在不同的控件中显示它们?一个接一个地倒计时?我不太明白,你能再发一些代码吗?例如,suna1()和suna2()中有什么?你的意思是“如何使自动控制刷新”?我不理解你的问题。你们能说得更清楚一点吗?你们想让它多次做什么?是否同时在不同的控件中显示它们?一个接一个地倒计时?我不太明白,你能再发一些代码吗?例如,suna1()和suna2()中的内容是什么?您的意思是“如何使自动控制刷新”?