[英]How to make a countdown timer that only begins in certain programs
所以在我开始之前,我想让你知道我已经知道如何制作计时器。 我唯一的问题是它只在我使用某些程序时才有效。 我知道编程,我希望计时器从10,000计数(你知道,要做一万小时的规则,是的,我已经完成了几百个,但我想跟踪我的进度)。 每当我打开我的视觉工作室时,我都希望计时器能够在我的桌面上运行,但我不知道如何实现这一点,到目前为止我在谷歌上没有运气,所以任何建议都会有所帮助!
提前致谢!
在您的柜台应用程序中,您可以设置一个“进程监视器”来检查:
using System.Diagnostics;
Process[] procList = Process.GetProcesses();
foreach(Process p in procList ){
if(p.ProcessName == "<visual studio process name>")
{ /*start the timer*/}
}
比如每分钟。 如果它找到visual studio,那么让它启动你的计时器。
您可以按照以下答案中的说明跟踪进程是否已打开: 如何在C#中获取活动进程名称?
这是你想要的吗?
System.Diagnostics.Process[] proc = System.Diagnostics.Process.GetProcessesByName("ProcessName");//Add visuals procname here
if (proc.Length > 0)
{
MessageBox.Show("Process running");
if (timer1.Enabled == false)
{
timer1.Start();//Starts the countdown}
System.Threading.Thread.Sleep(1000);
}
else
{
MessageBox.Show("Process not running");
if (timer1.Enabled == true)
{
timer1.Stop();//Stops the countdown}
System.Threading.Thread.Sleep(1000);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.