用C#用C#实现窗体在规定时间弹出,例如:10:00.弹出后关闭。并在5分钟后再次弹出。5次后停止。最好有具体代码实现窗体在规定时间弹出,例如:10:00.弹出后关闭。并在5分钟后再次弹出。5次后停止。最好有具体代码
run()
{
while(true)
{
show();
if(条件)
{
break;
}
sleep(5*60*1000);//暂停5分钟
}
}
thread B
run()
{
while(true)
{
time=当前时间;
if(time==你设定的时间)
{
A a=new A();
a.run();
break;
}
sleep(60*1000);//暂停1分钟
}
}
主方法
B b=new B();
b.run();
如果用时间控件,用2个时间控件,A一个enable=true,B一个为false,A控件设置运行间隔为60000毫秒,B设置时间间隔为300000毫秒
在A TImer事件中 获取当前时间,判断是不是10:00点,如果是,这B.enable=true;
在B timer事件中 写窗体的show()方法
不过在C#中好像程序不会停在show()方法哪里,会执行完的,除非你的是showdialog()模式
其实timer控件其实就是一个无限循环线程而已
不就可以了?每5分钟循环一次,里面再价格判断的依据,满足条件就跳出来就可以!
比如你写2个线程,一个每隔1分钟获取一下本地事件,再说了
你不循环,只执行一次当然就只能弹一次了
这个跟socket里面的堵塞原理一样的,一直都在哪里等着的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构