今天来窥视一下win32的窗体程序,学习windows32到底有没有必要呢,到底windows32有没有过时,其实这个答案我已经告诉你了,要不然我也不会窥视windows32.
不会c++,不会windows32编程的人,不要说自己是一名程序员。windows32学好了,MFC学好了,那你就牛逼了。
那么学习windows32必要的条件是什么呢:
1扎实的C++基础
2visual C++6.0或visual studioXXX
3很重要的一个工具MSDN(网上可以找到,最新是2001,10月的,(微软没再更新了))
平时我们在console编程的时候是这样的:
#include<iostream> using namespace std; int main(){ cout<<"HELLO Win"<<endl; return 0; }
那么对应的windows32程序怎么写呢?
不用恐惧,没有想象中的那么难:
#include<windows.h> int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow){ MessageBox(NULL,TEXT("hello,windows 98!"),TEXT("HelloMsg"),0); return 0; }
截个效果图给大伙看看:
再给大伙截个图,是从CSDN截的,看看winmain是怎么定义的:
解释一下参数的意义:
#include<windows.h>这是必须的,几乎包含了windows编程中的所有预处理器指令。windows.h是一个最重要的包含文件,它囊括了若干其他windows头文件,其中某些另外的头文件也很重要,下面几个是最基本的:
WINDEF.H 基本数据类型定义
WINNT.H 支持Unicode的类型定义
WINBASH.H 内核函数
WINUSER.H 用户界面函数
WINGDI.H 图形设备接口函数
WinMain的参数介绍:
第一个参数是:实例句柄,在程序里标识某样东西,在这里当让就标识这个主程序啦。
第二个参数是:是否有他的其它实例在运行,现在一般不用了,直接NULL
第三个参数是:命令行
第四个参数是:指明程序是如何显示的。
MessageBox参数:
第一个参数是:窗口句柄
第二个参数是:MessageBox的内容
第三个参数是:MessageBox标题的内容
第四个参数是:MB_常量,用来表示图标,按钮等。
下面看看第四个参数的一些常量:
这些value都可以作为第四个参数传进去,两个参数之间用“|”隔开(OR)
如下:
#include<windows.h> int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdShow){ MessageBox(NULL,TEXT("hello,windows32!"),TEXT("HelloMsg"),MB_OK|MB_ICONERROR); return 0; }现在对windows32有一点了解了,我会继续发博客,跟大家一起学习win32的