.NET Framework 类库 Application.DoEvents 方法请参见 Application 类 | Application 成员 | System.Windows.Forms 命名空间 | Exit | ExitThread | Run | Application 成员(Visual J# 语法) | C++ 托管扩展编程 要求 平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET 语言 C#C++JScriptVisual Basic全部显示 处理当前在消息队列中的所有 Windows 消息。[Visual Basic] Public Shared Sub DoEvents()[C#] public static void DoEvents();[C++] public: static void DoEvents();[JScript] public static function DoEvents();备注 当运行 Windows 窗体时,它将创建新窗体,然后该窗体等待处理事件。该窗体在每次处理事件时,均将处理与该事件关联的所有代码。所有其他事件在队列中等待。在代码处理事件时,应用程序并不响应。例如,当将另一窗口拖到该窗口前面时,该窗口不重新绘制。如果在代码中调用 DoEvents,则您的应用程序可以处理其他事件。例如,如果您有向 ListBox 添加数据的窗体,并将 DoEvents 添加到代码中,那么当将另一窗口拖到您的窗体上时,该窗体将重新绘制。如果从代码中移除 DoEvents,那么在按钮的单击事件处理程序执行结束以前,您的窗体不会重新绘制。通常,您在循环中使用该方法来处理消息。警告 调用该方法可以在某消息引发事件时导致重新输入代码。 要求 平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET请参见 Application 类 | Application 成员 | System.Windows.Forms 命名空间 | Exit | ExitThread | Run | Application 成员(Visual J# 语法) | C++ 托管扩展编程 --------------------------------------------------------------------------------发送有关此主题的意见 © 2001-2002 Microsoft Corporation。保留所有权利。
Application 类 | Application 成员 | System.Windows.Forms 命名空间 | Exit | ExitThread | Run | Application 成员(Visual J# 语法) | C++ 托管扩展编程
要求
平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET
语言
C#C++JScriptVisual Basic全部显示
处理当前在消息队列中的所有 Windows 消息。[Visual Basic]
Public Shared Sub DoEvents()[C#]
public static void DoEvents();[C++]
public: static void DoEvents();[JScript]
public static function DoEvents();备注
当运行 Windows 窗体时,它将创建新窗体,然后该窗体等待处理事件。该窗体在每次处理事件时,均将处理与该事件关联的所有代码。所有其他事件在队列中等待。在代码处理事件时,应用程序并不响应。例如,当将另一窗口拖到该窗口前面时,该窗口不重新绘制。如果在代码中调用 DoEvents,则您的应用程序可以处理其他事件。例如,如果您有向 ListBox 添加数据的窗体,并将 DoEvents 添加到代码中,那么当将另一窗口拖到您的窗体上时,该窗体将重新绘制。如果从代码中移除 DoEvents,那么在按钮的单击事件处理程序执行结束以前,您的窗体不会重新绘制。通常,您在循环中使用该方法来处理消息。警告 调用该方法可以在某消息引发事件时导致重新输入代码。
要求
平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列, .NET Framework 精简版 - Windows CE .NET请参见
Application 类 | Application 成员 | System.Windows.Forms 命名空间 | Exit | ExitThread | Run | Application 成员(Visual J# 语法) | C++ 托管扩展编程
--------------------------------------------------------------------------------发送有关此主题的意见 © 2001-2002 Microsoft Corporation。保留所有权利。
for(int i=0; i<200; i++)
textbox1.left += 1;运行结果是停顿一下,然后TEXTBOX瞬间移到右边了。
你如果在里面加上DOEVENTS就能看到效果。
for(int i=0; i<200; i++)
{
textbox1.left += 1;
Application.DoEvents();
}
比如发送数据时要等数据发送完才能发下一条,可以这样用:
Application.Doevents();
Thread.Sleep(1000);
将操作权交回操作系统然后程序睡眠1秒钟。又如在很大的循环中好好利用这个可以使程序停顿执行,不出现用户以为“程序死掉”的现象
int i=0;
while(true)
{
i++;
Application.DoEvents();
}如果没这句程序就假死了