上一篇小编带大家熟悉了一下ActiveX的建立以及相关的概念,(http://blog.csdn.net/u014028070/article/details/38424611

本文介绍下如何给控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作

我们接着以之前的程序为例子。

如何添加标准属性

(1)      首先我们要清楚,一个控件的属性添加后,它就被添加在接口中,本文既在_DTest 中,我们打开类视图选项卡,打开_DTest,“右键”->“添加属性”,单击,出现如下图所示

(2)      属性名下拉列表中,将会看到出现在列表框中的属性,这些都是“标准属性“,我们选择两个属性为参考,BackColor和ForeColor,点击完成即可,我们会发现接口下面,出现了这两个属性。

(3)      要想让我们所选择属性的值显示在控件上,我们还需添加几行代码,在OnDraw()函数中,我们添加如下

(4)      在CTestCtrl源文件中(.cpp)找到如下的位置,并添加代码,此语句功能是增加属性页,其中PROPPAGEID(CLSID_CColorPropPage) 增加的是 颜色属性页,注意:我们已经增加了属性页了,所以我们要在此修改为数值 “2”

(5)      编译(F7),然后打开容器测试程序,添加我们的控件,此时我们要修改属性时,如下图,在容器测试程序中,“EDIT“->”属性“  出现一个对话框。点击”颜色选型卡“,即可对颜色属性进行修改,确认即可显示。

如何添加自定义是属性

(1)      程序中定时器设置的是一秒刷新一下,我们可以通过添加自定义属性,来手动设置时间间隔,“接口_DTest“右键”->添加属性,在”属性名“中我们手动输名称”Interval“,此时变量名被自动设置为以”m_”打头的名字(本文中是m_interval),其中,属性名是在其他开发环境中属性的名称,而“变量名”是在VC开发环境下属性的成员变量。这一点要注意。

(2)      选择Member variable,类型为短整型short,点击确定,此时我们就添加了一个自定义属性。

(3)      接下来我们来使用已经定义好的属性,如下图,我们添加代码

(4)      此时我们可以再容器测试程序中测试,打开测试程序,添加控件,在“Control“->“invoke method”,我们在“方法名称“选择interval(propput),因为我们是要设置属性的值,所以选择put,输入想要的值,如下图,

(5)      到此我们看见,时间按我们设置的时间进行显示。

如何添加方法(相当于函数)

(1)      添加方法仍然是在“接口“选项中添加,我们在此简单的演示下,此时我们已经添加了一个方法  Hello,注意:在“接口_DTest“下出现我们添加的方法,如下图。

(2)      要知道,我们的所添加的方法,都要在CTestCtrl类中实现。所以我们在CTestCtr类中找到方法Hello,添加一个消息框,如下图。

(3)      我们在容器测试程序中调用方法Hello(),打开测试程序,添加我们的Test控件,

(4)      此时可以看到已经蹦出来一个消息框了。

如何添加事件

(1)    在CtestCtrl类上右键,添加事件(可以为该类添加一个事件),注意,事件的功能实现并不是由控件完成的而是由调用控件的程序完成的,

(2)    我们添加一个标准事件,“点击“事件

(3)    在此我们可以发现我们添加的事件,如下图。

(4)    我们仍然在容器测试程序中调用他,尽管我们没有写任何代码,但是我们已经添加了一个点击事件。首先先编译一下(F7)

(5)    我们点击控件,发现测试程序下面的消息框,出现如下字样,证明控件检测到我们点击了控件这个事件。

到此小编已经为大家通过简单的例子,来介绍如何添加事件,属性,方法的步骤以及一些概念,下一篇,我介绍下如何在自己写的程序中使用ActiveX控件。http://blog.csdn.net/u014028070/article/details/38424611点击打开链接

如何给ActiveX控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作的更多相关文章

  1. WPF系列 —— 控件添加依赖属性(转)

    WPF系列 —— 控件添加依赖属性 依赖属性的概念,用途 ,如何新建与使用.本文用做一个自定义TimePicker控件来演示WPF的依赖属性的简单应用. 先上TimePicker的一个效果图. 概念 ...

  2. c# 开发ActiveX控件,添加事件,QT调用事件

    c# 开发 ActiveX 的过程参考我的另一篇文章 :  https://www.cnblogs.com/baqifanye/p/10414004.html 本篇讲如何 在C# 开发的ActiveX ...

  3. 【C#】使用IExtenderProvider为控件添加扩展属性,像ToolTip那样

    申明: - 本文适用于WinForm开发 - 文中的“控件”一词是广义上的说法,泛指包括ToolStripItem.MenuItem在内单个界面元素,并不特指继承自Control类的狭义控件 用过To ...

  4. ATL向控件添加私有属性-成员变量

    https://msdn.microsoft.com/zh-cn/library/cc451389(v=vs.71).aspx ------------------------------------ ...

  5. 【VS开发】ActiveX控件如何定制属性?

    在很多场合下会存在这样的需求,那就是使用方在实际使用控件之前就想控件已经做了相应的处理比如加载的控件版本不正确等,或者需要在加载时才确定能够使用的功能集:这个时候传统的配置文件已经无法满足这种类型的需 ...

  6. WPF系列 —— 控件添加依赖属性

    依赖属性的概念,用途 ,如何新建与使用.本文用做一个自定义TimePicker控件来演示WPF的依赖属性的简单应用. 先上TimePicker的一个效果图. 概念 和 用途:依赖属性是对传统.net ...

  7. WPF对某控件添加右键属性

    代码创建右键属性 ContextMenu cm = new ContextMenu(); MenuItem mi = new MenuItem(); mi.Header = "打开此文件所有 ...

  8. Delphi 编写ActiveX控件(OCX控件)的知识和样例(有详细步骤)

    一.ActiveX应用情况简介: ActiveX控件也就是一般所说的OCX控件,它是 ActiveX技术的一部分.ActiveX是微软公司推出的基于组件对象模型COM的技术,包括对Windows 32 ...

  9. ActiveX控件(MFC篇)

    目录 第1章 VC++6.0创建控件    1 1.1 目标    1 1.1.1 方法    1 1.1.2 属性    1 1.1.3 事件    1 1.2 创建项目    2 1.3 项目结构 ...

随机推荐

  1. .NET Reflector反编译的方法

    首先启动.NET Reflector,然后添加进入dll或exe.然后选择Export Source Code...,将反编译后的代码文件,生成到指定目录. 到这一步骤时,稍等一会,就能够在指定目录就 ...

  2. VBS创建数据表

    '创建数据表'参数:strDBPath 字符串型 数据库路径'参数:strTableName 字符串型 需要创建的数据表的名称'参数:strColumnName 字符串型 初始化的字段名称,其实可以算 ...

  3. 深入了解Qt(一)之QObject

    深入了解Qt主要内容来源于Inside Qt系列,本文做了部分删改,以便于理解.在此向原作者表示感谢! QObject这个 class 是 QT 对象模型的核心,关于对象模型可以阅读C++对象模型详解 ...

  4. MyBatis学习系列三——结合Spring

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring MyBatis在项目中应用一般都要结合Spring,这一章主要把MyBat ...

  5. Java druid

    1.ConnectionFactory (添加引用:druid-1.0.1.jar) package nankang.test; import java.sql.Connection; import ...

  6. C#基础-可访问性-public、ptotected、protected internal、internal、private

    1.类型的可访问性 a.关键字有public.internal,其中public表示该类型对于程序集都可见.internal表示该类型仅对当前程序集可见.此处的类型可以为类.接口.结构等. b.如果不 ...

  7. 逻辑运算符||和| 、&&和&的区别

    ||和| .&&和&的区别 这里以&&和&为例.或与之一直 1.&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符 ...

  8. Template_Method

    #include <iostream> using namespace std; #define DESTROY_POINTER(ptr) if (ptr) { delete ptr; p ...

  9. SQLServer存储过程入门

    1.创建一个返回结果集的存储过程 create procedure firstpro As begin select * from dbo.Person End 执行: execute dbo.fir ...

  10. 【Zend Studio】10.6.0版本设置默认编码为UTF-8

    1.打开Windows->Prefefences 2.找到Workspace->Text file encoding,修改为UTF-8,OK保存.