1、新建项目-》选择“MFC ActiveX 控件”工程,给项目命名MyDemoOcx,点击确定,弹出“控件向导”对话框
2、然后点击“完成”,这样“MFC ActiveX 控件”工程创建完成
3、定义调度映射和事件映射方法,提供给外部调用者使用
4、如果要添加一个调度映射的方法SetCurrentProjectName(),使得外部可以调用:在_DMyDemoOcx项中可以右键-》添加方法,设置框
5、填写完信息后点击完成,外部就可以调用方法SetCurrentProjectName,同时ActiveX控件项目代码的内部将会在三个文件中新增代码
7、向ActiveX控件中添加一个Mfc窗体,就是一个带界面的ActiveX控件在资源视图中新建一个对话框资源
8、去掉上边的“确定”和“取消”按钮,然后修改对话框属性:Border改为None,Control改为Ture,ID改为IDD_MA朐袁噙岿IN_DIALOG,Style改为Child, Visible改为True,然后在对话框中双击,为对话框添加一个类,如下图
9、点击“完成”。在解决方案资源管理器中新增了一个CMainViewDlg.h和CMainViewDlg.cpp这个CMainViewDlg类就是刚刚我们建立的对话框类然后拖一个Edit Control到对话框上,修改其ID为IDC_EDIT_OUTPUT,再拖一个Button到对话框上,此时对话框效果为
10、对话框建立完成,接下来就是要把它添加到ActiveX控件中去
11、在CMyDemoOcxCtrl.h中定义对话框指针对象CMainViewDlg* m_pMainViewDlg; 然后在CM烤恤鹇灭yDemoOcxCtrl类中定义两个消息映射:窗体创建完成消息映射和窗体改变大小消息映射在VS2010的菜单项“项目”--》“类向导”中,选择要添加到的项目和类中,选择“消息”选项卡,选择WM_CREATE后点击”添加处理程序“按钮和选择WM_SIZE后点击”添加处理程序“,这样在“现有的处理程序”中就有OnCreate和OnSize这两个函数,点击确定,完成消息映射函数的添加: 在CMyDemoOcxCtrl.cpp中自动添加下列代码,如图:
12、在OnCreate函数中编写如下代码(Create是在ActiveX控件中创建一个窗体对话框,IDD_MAIN_DIALOG就是刚刚新建的对话框):
13、在OnSize函数编写代码如下(MoveWindow是确定窗体对话框在ActiveX中的大小):
14、第三:重新编译,注册ocx,使用ActiveX Control Test Container再次测试该控件
15、可以发现这个ActiveX控件中已经有了界面了。