正在阅读:VC精华教程:MFC入门系列(四)VC精华教程:MFC入门系列(四)

2005-09-06 10:02 出处:PConline 作者:zhoujiamurong 责任编辑:moningfeng

  我们看到他们是同宗同源的。我们了解了这个类,我们知道在一个类实例化之前,她是没有任何作用的,所以我们要定义和实例化这两个类。我们继续上次的程序。在里面加这两个类的定义和实例化。

#include <afxwin.h>
#include <afxext.h>//MFC扩展类的头文件,也就是类的定义
#include "resource.h"
class sample:public CFrameWnd
{
public:
CToolBar t;//实例化工具条类
CStatusBar s;//实例化状态条类
sample()
{
Create(NULL,"MFC Window",WS_OVERLAPPEDWINDOW,rectDefault,NULL,MAKEINTRESOURCE(IDR_MENU1),0,NULL);
MessageBox("My MFC Window","CFrame constructor",MB_OK);
}
void OnLButtonDown(UINT,CPoint)//添加的消息处理函数
{
::MessageBox(NULL,"ddd","dd",MB_OK);
}

DECLARE_MESSAGE_MAP()//消息映射的申明

};

BEGIN_MESSAGE_MAP(sample,CFrameWnd)
//这个宏填写两个参数,一个子类,一个父类
ON_WM_LBUTTONDOWN()//左键按下的事件
END_MESSAGE_MAP()//结束宏
class App:public CWinApp
{
public:
BOOL InitInstance();
BOOL ExitInstance();

};



BOOL App::InitInstance()
{
MessageBox(0,"My MFC Window","InitInstance",MB_OK|MB_ICONASTERISK);
sample *obj;
obj=new sample;
m_pMainWnd=obj;
obj->ShowWindow(SW_SHOWMAXIMIZED);
return TRUE;
}

BOOL App::ExitInstance()
{
MessageBox(0,"My Window","ExitInstance",MB_OK|MB_ICONHAND);
return TRUE;
}

App a;


  添加了三句话,我们运行一下,发现并没有效果。其实,在实例化后,我们仅仅是可以使用这两个类了,我们还要调用这两个类的方法才行。在调用之前,我们在讲一下理论知识。
键盘也能翻页,试试“← →”键

关注我们

最新资讯离线随时看 聊天吐槽赢奖品