码迷,mamicode.com
首页 > 编程语言 > 详细

vs2012开发基于MFC的ActiveX控件

时间:2018-07-03 20:45:48      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:ali   浏览器   test   title   新建   基于   ring   注意   本机   

1.新建工程

技术分享图片

2.一直点击下一步,直到出现一下界面,注意红色标注选项,点击完成。

技术分享图片

3.进入工程的属性界面,设置工程属性

技术分享图片

4.添加对话框资源及其他控件,添加对话框类,

技术分享图片

5.设置对话框属性

技术分享图片

 

6.设置Dialog的“添加类”

技术分享图片

 

输入“类名”;(其他的空白处事自动填写)

技术分享图片

 

此时自动生成“MyDlg.h”和“MyDlg.cpp”两个文件。

 

7.对“CDemoActivexCtrl”添加WM_CREATE事件,选择”<添加>OnCreate”,以初始化对话框对象。

技术分享图片

技术分享图片

此时在“DemoActiveXCtrl.cpp”中多了两部分代码。

 

8.修改代码

    (1)在“DemoActiveXCtrl.h”增加头文件  #include "MyDlog.h"以及成员MyDlg m_MyDlg;

    (2)修改DemoActiveXCtrl.cpp”

int CDemoActiveXCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (COleControl::OnCreate(lpCreateStruct) == -1)
        return -1;
 
    // TODO:  在此添加您专用的创建代码
    m_MyDlg.Create(IDD_DIALOG1,this);  //初始化对话框
    return 0;
}

void CDemoActiveXCtrl::OnDraw( CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)  
{  
    if (!pdc)  
        return;  

m_MyDlg.MoveWindow(rcBounds,true); }

 

此时,有编辑框的那个界面已经可以在控件并加载后显示了,先在菜单栏中点击“生成”、“重新生成解决方法”,如果没有错误,则该控件就会在本机中注册。下边编写一简单htm文件在本机上对该控件进行测试。

<HTML>
<HEAD>
<TITLE>Test ActiveX</TITLE>
</HEAD>
<OBJECT ID="TextActiveX" WIDTH=528 HEIGHT=545 classid="CLSID:ECF33ACE-175E-4D25-919A-0FABF03B55D5">
    <PARAM NAME="_Version" VALUE="65536">
    <PARAM NAME="_ExtentX" VALUE="12806">
    <PARAM NAME="_ExtentY" VALUE="1747">
    <PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
</HTML>

 

其中“ECF33ACE-175E-4D25-919A-0FABF03B55D5”是通过“DemoActiveXCtrl.idl”获取的

技术分享图片

 

用IE浏览器打开保存的html文件,即可显示控件,如果不行配置下ie的安全选项~~~

 

vs2012开发基于MFC的ActiveX控件

标签:ali   浏览器   test   title   新建   基于   ring   注意   本机   

原文地址:https://www.cnblogs.com/enki-fang/p/9260460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!