我刚刚开始.Net开发(C#)并遇到了一些让我有点困惑的代码....
如果我有
Form myForm = new Form();
Run Code Online (Sandbox Code Playgroud)
以下行实际上做了什么:
Application.Run(myForm);
Run Code Online (Sandbox Code Playgroud)
它本质上与myForm.ShowDialog()或myForm.Show()做同样的事情(这就是我想的,当运行表单时会这样做).....
我总是发现msdn是一个很好的资源,无法向新来者正确解释材料
Ama*_*ure 15
Application.Run(myForm);使该表单对用户可见.它是第一种加载到内存中的形式.它在消息循环中运行此表单,以便您获得所有用户事件.
简答:
Application.Run开始在当前线程上运行标准应用程序消息循环.
答案很长:
Application.Run导致Windows应用程序进入Winmain中的消息循环,以处理操作系统发布到消息队列的各种Windows消息.消息循环,"循环",直到它收到WM_QUIT消息.它使用GetMessage和PeekMessage检索消息并将PostMessage已检索的消息发送到Windows过程.
如果你这样做
Form myForm = new Form();
myForm.Show();
Run Code Online (Sandbox Code Playgroud)
它会显示表格并退出.当您想从现有表单启动新表单时,您将使用new Form()&.Show().
希望这能回答你的问题.
| 归档时间: |
|
| 查看次数: |
12854 次 |
| 最近记录: |