Windows程序设计【001】第一个Windows程序

一、创世纪

梦中惊醒后,我们来编写Windows程序。

严格地说,运行在Windows上的控制台程序,也叫Windows程序,不过,那种程序不具有Windows的特点——窗口。所以,我们始终用“Windows程序”来指代那些运行在Windows上的且有窗口的应用程序。

最简单的Windows程序非消息框莫属,从消息框开始应该是编写Windows应用程序最好的开端了。

运行VS,单击菜单上的“文件”,选择“新建”,选择“项目”,选择“Win32项目”,名称随便,叫“Lesson001”好了,单击“下一步”,复选“空项目”,单击“完成”。

在左边的“解决方案管理器”中,右键单击“源文件”,选择“添加”,选择“新建项”,文件名随意,不妨“main.cpp”。

Windows程序设计【001】第一个Windows程序


二、编写代码

在文件main.cpp中键入如下内容:

#define WIN32_LEAN_AND_MEAN
#include <windows.h>

int __stdcall wWinMain(HINSTANCE, HINSTANCE, wchar_t*, int)
{
    MessageBox(nullptr, L"内容", L"标题", MB_OK);
    return 0;
}

在菜单上选择“生成”,“生成解决方案”,就可以编译程序了。

然后在菜单上选择“调试”,“开始执行(不调试)”,就可以看到一个消息框弹了出来。

Windows程序设计【001】第一个Windows程序


三、代码构成

在上面的代码中,<windows.h>是编写Windows程序所需要的头文件,WIN32_LEAN_AND_MEAN是为了排除windows.h中一些不常用的东西。wWinMain是程序的入口点,就如同main是控制台程序的入口点一样,它有4个参数(这个程序中没有用到)。

接下来的MessageBox函数是这个简短的程序中最核心的部分。

MessageBox(hWnd, pText, pCaption, Type);

hWnd表示这个消息框的父窗口,如果没有父窗口,则设为nullptr。在我们的程序中,消息框没有父窗口(或者说,以桌面为父窗口),所以传入nullptr。pText、pCaption分别是消息框的内容和标题,如图所示:

Windows程序设计【001】第一个Windows程序

Type表示这个消息框的按钮状况以及图标状况。例如,MB_OK表示有一个“确定按钮”;MB_YESNO表示有“是”和“否”两个按钮。除了指定按钮,这个值还可以指定图标。

Windows程序设计【001】第一个Windows程序

MessageBox的返回值,表示哪个按钮被点击了。

MessageBox函数的详细用法,见MSDN:

MessageBox function

你可能感兴趣的:(C++,windows,窗口,程序,教程)