窗口与句柄

窗口概念


窗口是windows应用程序中一个非常重要的元素,一个windows应用程序至少要有一个窗口,称为主窗口。窗口就是屏幕上的矩形区域,是windows应用程序与用户进行交互的接口。


一个应用程序窗口通常都包含标题栏、菜单栏、系统菜单栏、最小化框、最大化框、可调边框,有的还有滚动条,如图1所示。


窗口可以分为客户区和非客户区,客户区是窗口的一部分,由应用程序管理,可以在客户区完成文字显示或者绘制图形。标题栏、菜单栏、最小化框等称为窗口的非客户区,它们有windows系统来管理。


 图1 WS_OVERLAPPEDWINDOW类型窗口

   1系统菜单栏 2标题栏 3最小化框 4最大化框 5关闭按钮 6可调边框 7客户区 8滚动条


窗口形式


对话框、消息框也是一种窗口;在对话框上我们还会经常遇到诸如按钮、单选按钮、复选按钮、组框、文本编辑框等形式的窗口,这些窗口是对话框的子窗口,是窗口的一种形式。

同时,我们在启动windows系统后,看到的桌面也是一种窗口,称为桌面窗口,它由windows系统窗口和管理。


句柄定义


句柄是WINDOWS用来标识被应用程序所建立或使用的对象的唯一整数,使用起来像指针,但它并不是真正意义上的指针。在windows有各种各样的资源(窗口、图标、光标画刷等),这些资源都是由操作系统创建并分配内存,并返回标识这些资源的标识号,即句柄。


句柄类型


在windows应用程序中,若想要操作窗口则需要得到这个窗口的句柄,即HWND。在windows中还有HFONT、HDESK、HDC、HCURSOR、HBRUSH、 HICON句柄类型;这些句柄都是Windows 的数据类型,可以从MSDN上查找到它们的准确定义。

原文地址:https://www.cnblogs.com/jinxiang1224/p/8468392.html