什么是窗口?
窗口是windows编程的核心,那什么是窗口?此时浮现在你脑中窗口的应该是这个样子的
这种类型的窗口叫做应用窗口或者主窗口,窗口内部的区域叫做client area,是由用户自己的程序管理的,窗口外的区域是由OS管理的。下图是另外一种类型的窗口。
是的,不要怀疑,这确实也是一种窗口!在Windows编程中,UI的控件,例如Button或者edit box,它们自身就是窗口。UI控件和应用程序窗口最大的不同就是控件自己是不能存在的。也就是说,控件必须放在窗口当中。当你拖拽一个窗口的时候,控件会随着窗口移动。除此之外,控件和应用程序窗口可以communicate。
因此,当你想到窗口的时候,不要仅仅想到应用程序窗口;一个窗口应该包含以下特点
•占据屏幕特定的区域
•有时可能不可见
•自己知道如何重绘
•响应用户或者操作系统的事件
父窗口和Owner窗口
控件窗口是应用程序窗口的child,应用程序窗口是控件窗口的Parent。应用程序窗口为子窗口提供用于定位耳朵坐标系。并且,父窗口会在外观上影响子窗口;例如,没有子窗口能够出现在父窗口的边界之外,如果越界,则被剪裁。
当应用程序显示一个对话框的时候,应用程序窗口就是own