activeX/ocx

来源:互联网 发布:淘宝能货到付款吗? 编辑:程序博客网 时间:2024/06/06 05:39

 ocx其实是个dll文件,你只要把dll文件的后缀名改为ocx即可.     不过它是有接口的.

 

理论:

http://www.ithome-cn.net/technology/delphi/de094.htm

实例:

http://wwyyff80.blog.sohu.com/60239343.html

 

使用:

http://www.360doc.com/content/10/0403/12/861352_21411014.shtml

 

exe转activeX

http://bbs.2ccc.com/topic.asp?topicid=274532

 

一、建立工程

  通过"MFC ActiveX ControlWizard"向导可以非常容易的建立一个MFC ActiveX控件工程框架。按照默认的选项将建立如图1所示的工程结构:

1 使用缺省选项建立的ActiveX控件工程结构

二、添加方法

_Dpptr2上右击,找添加->添加方法,在弹出的对话框中,属性名的列表中输入自定义的属性名,然后选择相应的属性类型:

 

三、设定属性

3.1添加属性

_Dpptr2上右击,找添加->添加属性,在弹出的对话框中,属性名的列表中输入自定义的属性名,然后选择相应的属性类型:

3.2调用属性

按下F5运行该项目,在容器中添加此控件后,首先选中该控件(单击控件边框或者鼠标左键按下框选),然后Control->Invoke Methods,弹出如下对话框:

设定属性值:method Name中选择port(PropPut),然后Parameter中设定值,点击Set Value按钮,然后再点击Invoke按钮;

 

获取属性值:method Name中选择port(PropGet),然后点击Invoke按钮;

 

 

四、编辑属性页

1、资源视图窗口中,打开IDD_PROPPAGE_PPTR2窗口,在窗口中添加一个输入框

2、右击输入框->添加变量

3、控件变量t_port关联属性port

 pptr2PropPage.cpp文件中修改DoDataExchange函数为

void Cpptr2PropPage::DoDataExchange(CDataExchange*pDX)

{

     DDP_Text(pDX,IDC_EDIT1, t_port,_T("port"));//为添加的代码

     DDX_Text(pDX,IDC_EDIT1, t_port);

     DDP_PostProcessing(pDX);

}

 

四、属性值保存到容器中

1pptr2Ctrl.cpp文件中修改DoPropExchange函数为

void Cpptr2Ctrl::DoPropExchange(CPropExchange*pPX)

{

     ExchangeVersion(pPX,MAKELONG(_wVerMinor,_wVerMajor));

     COleControl::DoPropExchange(pPX);

     PX_Long(pPX,"port",m_port,1000);

     // TODO: 为每个持久的自定义属性调用PX_函数。

}

当保存加载该ocx的项目时,属性port则保存到容器中了,下次打开该项目,port值还是上次设定的值。

原创粉丝点击