Application.Run()有什么作用?

时间:2010-06-13 22:01:14

标签: c# .net winforms

我在想WinForms就像任何其他类一样。但是从项目开始让我感到困惑。为什么新的Form从Application.Run开始,它内部发生了什么样的机制?

2 个答案:

答案 0 :(得分:12)

正如它在documentation中所说的,它开始在当前线程上运行标准的应用程序消息循环。消息循环处理点击,按键,绘制请求以及许多其他事情。

当调用with a form as an argument时,它也会使该表格可见。

答案 1 :(得分:4)

这可以追溯到Win32 API。 Winforms位于win32 api之上。 Application.Run()将您的程序插入(实现)win32 message loop。几乎所有鼠标和键盘事件(以及用户发起的大多数事情)都是win32消息。