Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#当鼠标移动事件时,时间循环停止_C#_Multithreading_Events_Event Handling - Fatal编程技术网

C#当鼠标移动事件时,时间循环停止

C#当鼠标移动事件时,时间循环停止,c#,multithreading,events,event-handling,C#,Multithreading,Events,Event Handling,我已经创建了一个游戏,你需要射击一只鼹鼠,它在屏幕上每0.5秒随机移动一次 当我在屏幕上不停地移动鼠标时,时间循环似乎会冻结,直到鼠标停止移动 我有一个鼠标移动事件刷新到屏幕, 以及每0.5秒更新表单的时间循环事件。如何使两个事件都运行而不相互干扰?我无法正确理解您的意思,但根据您提供的线索,我可以建议您使用一种方法,即线程进程。由于您正在更改的是ui元素,因此必须使用Begininvoke方法 public delegate void InvokeDelegate(); private voi

我已经创建了一个游戏,你需要射击一只鼹鼠,它在屏幕上每0.5秒随机移动一次

当我在屏幕上不停地移动鼠标时,时间循环似乎会冻结,直到鼠标停止移动

我有一个鼠标移动事件刷新到屏幕,
以及每0.5秒更新表单的时间循环事件。如何使两个事件都运行而不相互干扰?

我无法正确理解您的意思,但根据您提供的线索,我可以建议您使用一种方法,即线程进程。由于您正在更改的是
ui元素
,因此必须使用
Begininvoke
方法

public delegate void InvokeDelegate();
private void Invoke_Click(object sender, EventArgs e)
{
    mole.BeginInvoke(new InvokeDelegate(InvokeMethod));
}
public void InvokeMethod()
{
    // change your mole position here
}

您可以使用Backgroundworker。订阅Backgroundworker的DoWork事件。你可以数数你的计时器或是观看比赛


您也可以分享您的代码吗?