/*------------------------------------------------------------------
例一:通过本例,学习WIN32的程序进入点,头文件及相当于C里面的printf的
MessageBox消息框
这段代码我很满意,直接复制到一个source file里面就可以运行了哈
PS;选择的时候不能选consele application 哪个选择 WIN32 Application的那个~
2007年三月30日,悲惨的一天
今天去看脸上的红豆子,二医院的医生给我打了两针,现在半个屁股都在痛
--------------------------------------------------------------------*/
#include <windows.h></windows.h>
int WINAPI WinMain (HINSTANCE hInstance, //执行实体的句柄,唯一标志该程序(不是窗口)
HINSTANCE hPrevInstance,//在WIN32中,这个父句柄总为NULL
PSTR szCmdLine,//长指针为LPSTR,前缀sz表示以零结尾的字符串,i表示int型
//这个参数是执行程序的命令列,某些Windows应用程序利用它在程序启动时
//将文件加载存……没没明白。。
int iCmdShow)//程序最初的显示方式,正常,最大……单步调式发现这个地方的iCmdShow的值为1,
//并且将iCmdShow换成其他变量名,也是1,说明这个值是系统传入,而不是因为iCmdShow是宏~
{
/*——————————————————————————————————————————————————
MessageBox函数用于显示短信息。虽然,MessageBox显示的小窗口不具有什么功能,实际上它被认为是一个对话框。
------------------------------------------------------———————————————————————*/
UINT X;//UINT是一个unsigned int类型
X=MessageBox (NULL, TEXT ("卓卓相当聪明?"), TEXT ("智力测试"), MB_ICONQUESTION|MB_YESNO);
if(X==IDYES)//IDYES 是UNIT类型一个宏,根据对话框按钮类型的不同,返回值不同,但是都以ID为前缀。
//都是UNIT类型,可以看MessageBox的申明。
MessageBox (NULL,// 窗口句柄
TEXT ("智力正常!恭喜"), //在消息框主体中显示的字符串
TEXT ("结果显示"),//出现在消息框标题列上的字符串
MB_ICONEXCLAMATION|MB_OK);
//其它MB_常数,但您可以自己参考表头文件或
// / Platform SDK / User Interface Services / Windowing / Dialog Boxes / Dialog Box Reference / Dialog Box Functions里的文件。
else
MessageBox (NULL,// 窗口句柄
TEXT ("我为你感到难过,你应该多喝点脑百金!"),
TEXT ("结果显示"),
MB_OK|MB_ICONERROR);
//窗口大小由显示的字符串的长度自动调整,以上的几个对话框并没有显示定义长度大小,但是却不相同的原因。
return 0 ;
}