在Windows系统中,消息是一种数据结构(C语言中的结构体),其中包括消息名称,一些相关参数和处理这个消息的指针。
根据消息的来源不同,一般有:
1.输入消息:包括鼠标、键盘的输入。此类消息会被Windows放入消息队列,由应用程序来处理。
2.控件消息:主要与Windows控件,如按钮、文本框等通信。此类消息一般不通过消息队列,直接发送到控件对象上去。
3.系统消息 :如创建窗体等。
4.用户自定义消息:这类消息是用户自定义的。这类消息十分重要。
Windows API模式不是面向对象层面的,是C语言模式的。
#include <windows.h> 是使用Windows API必须包含的头文件
下面是一个典型的Window 32 应用程序。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPreInstance,LPSTR lpCmdLine,int nShowCmd)
{
MessageBox(NULL,L"hello,word",,L"标题",0);
return 0;
}
分析:
windows.h是Windows程序设计中一个主要包含文件,它定义了我们进行Windows程序设计中的数据结构、数据类型、常数、函数原型;
WinMain函数返回一个Int类型值;
WINAPI是指示编译的识别字。所谓指示如何编译就是规定在编译时候告诉编译器如何生成二进制代码、函数参数的入栈顺序、参数放置位置等。其实WINAPI的定义如下:
#define WINAPI _stdcall
_stdcall是Windows下程序的通用函数调用方式。
WinMain的四个参数:第一个是指示当前程序执行实例的;(不懂)
第二个由于历史的原因永远置0就行;
第三个是命令行参数,参数类型是LPSTR,其实就是指向字符串的指针,一般就是程序启动时的一些命令参数;
最后一个参数指示了程序最初的显示方式,如最大化,最小化显示等。
MessageBox有四个参数,第一个参数是所在的母窗体的代号,没有就写NULL;第二个是窗体显示的内容;第三个是窗体的标题上显示的内容;第四个是弹出的MessageBox的风格,比如MB_OK,MB_OKCANCEL等。