Windows 窗体

Posted lector

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows 窗体相关的知识,希望对你有一定的参考价值。

  Windows系统,顾名思义,就是窗口系统,每一个程序都可以用窗口来展示,所以,为了展示窗口,需要多做一系列的工作,当然,也有纯控制台应用,就不用附带窗口了。

  首先就是窗口程序的入口地址,与传统的int main(int argc, char *argv[])类似,主函数的参数有一个对应该程序的句柄,相当于pid,一个cmd的输入内容,一个用来标识当前窗口的显示状态。

  然后是注册窗口数据,定义一个结构体,放入东西(窗口显示数据,名字、图标什么的),然后系统调用,把这段内存的地址在内核里保存一下,以便内核后续提取展示等,然后是创建窗口,和文件i/o类似,在内核里创建了一段主窗口结构的内存,返回一个对应的句柄给用户调用。

  所以每个窗口程序都有有两个句柄,一个主程序句柄,一个窗口句柄。

  然后把窗口句柄用GUI输出,开始互交。

  之后是消息处理,Windows窗口是事件驱动,不断查看消息队列、翻译命令、处理。如果关闭窗口,会先触发关闭消息,默认是关闭窗口GUI,关闭窗口后会触发关闭句柄和内核窗体结构,触发退出消息循环,然后退出,结束。

以上是关于Windows 窗体的主要内容,如果未能解决你的问题,请参考以下文章

C#如何在 Windows 窗体应用程序中使用事件

vs2015中的c#windows窗体应用程序怎么使用OpenGL?

Windows 窗体应用程序和 Windows 窗体应用程序 (.NET Framework) 有啥区别

我用C#创建的是windows窗体应用项目,做的是登陆页面,里面可以使用session吗

初识Windows窗体

c# windows 窗体 如何 设置菜单的权限