Windows应用程序框架之窗口、句柄、消息

简介:       深入MFC类库,需要先从windows应用程序的基本结构入手。 windows应用程序框架:       windows操作系统采用了图形用户界面,借助与它提供的API函数,用户可以编出具有漂亮图形界面的windows应用程序,这些程序都有着相同的窗口风格和菜单结构。

      深入MFC类库,需要先从windows应用程序的基本结构入手。

windows应用程序框架:

      windows操作系统采用了图形用户界面,借助与它提供的API函数,用户可以编出具有漂亮图形界面的windows应用程序,这些程序都有着相同的窗口风格和菜单结构。用户界面良好,方便用户操作。利用windows API函数编程,需要了解窗口、句柄、稍息等概念。

 

1、窗口:

    编写一个windows应用程序首先应创建一个或者多个窗口,而后应用程序的运行过程既是窗口内部、窗口与窗口之间、窗口与系统之间进行数据处理与数据交换的过程。

窗口是应用程序与用户进行交互的界面,应用程序通过窗口传递信息给用户,同样,用户通过窗口输入数据,给应用程序发布命令。

如word应用程序界面就是一个窗口,它具有窗口的一些基本特征。

    image

                                                    图1

 

2、句柄:

     windows操作系统中所谓“句柄(Handle)”是唯一标识某个windows对象(如窗口、图标、光标、画刷、菜单等)的一个32位无符号整数。

句柄是windows对象的代号。

     windows程序通过通过调用win32 API函数获得某个windows对象的句柄,只有有了句柄,程序才能调用与其对应的windows对象。

 

3、消息:

     windows应用程序通过windows消息与应用程序及系统进行信息交换。

     当在应用程序中触发一事件(点击鼠标左键)时,就会产生该事件的一个消息(WM_LBUTTONDOWM),接着调用该消息的消息处理函数(OnLButtonDown()),来响应事件。

消息往往用如下的结构体表示,具有六个成员:

 

  1. typedef struct tagMSG { // msg
  2.    HWND hwnd; // 窗口句柄,即触发消息的窗口
  3.    UINT message;// 消息值,包键盘键入消息等
  4.    WPARAM wParam;// 包含有关消息的附加消息,不同消息其值有所不同
  5.    LPARAM lParam;//
  6.    DWORD time;// 指定消息送到消息队列的时间
  7.    POINT pt;//指定消息发送时屏幕光标的位置
  8. } MSG;


 

wParam 包含有关消息的附加消息,不同消息其值有所不同 。它的意思,比如点击键盘上任意一个键都会产生一个WM_CHAR消息。为了区别按下的是什么键,就添加wParam、lParam这两个键来区别。

相关文章
|
13天前
|
消息中间件 编译器 API
Windows窗口程序
Windows窗口程序
|
14天前
|
C# Windows
.NET开源免费的Windows快速文件搜索和应用程序启动器
今天大姚给大家分享一款.NET开源(MIT License)、免费、功能强大的Windows快速文件搜索和应用程序启动器:Flow Launcher。
|
1月前
|
Windows
实现Windows程序的数据更新
实现Windows程序的数据更新
12 0
|
1月前
|
Windows
构建布局良好的Windows程序
构建布局良好的Windows程序
11 0
|
1月前
|
C# Windows
初识Windows程序
初识Windows程序
10 0
|
2月前
|
Java Linux Windows
windows实现自动部署jar包运行程序
windows实现自动部署jar包运行程序
39 0
|
1月前
|
数据可视化 数据库 C++
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用
|
2月前
|
Windows
火山中文编程 -- 第一个windows程序
火山中文编程 -- 第一个windows程序
12 0
|
2月前
|
安全 Linux iOS开发
上传 iOS 应用变得更加容易 - 在 Windows 上架 iOS APP 的工具介绍
上传 iOS 应用变得更加容易 - 在 Windows 上架 iOS APP 的工具介绍