如何给ActiveX控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作
上一篇小编带大家熟悉了一下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控件添加“事件”“属性”“标准事件”“自定义事件”等一些相关操作的更多相关文章
- WPF系列 —— 控件添加依赖属性(转)
WPF系列 —— 控件添加依赖属性 依赖属性的概念,用途 ,如何新建与使用.本文用做一个自定义TimePicker控件来演示WPF的依赖属性的简单应用. 先上TimePicker的一个效果图. 概念 ...
- c# 开发ActiveX控件,添加事件,QT调用事件
c# 开发 ActiveX 的过程参考我的另一篇文章 : https://www.cnblogs.com/baqifanye/p/10414004.html 本篇讲如何 在C# 开发的ActiveX ...
- 【C#】使用IExtenderProvider为控件添加扩展属性,像ToolTip那样
申明: - 本文适用于WinForm开发 - 文中的“控件”一词是广义上的说法,泛指包括ToolStripItem.MenuItem在内单个界面元素,并不特指继承自Control类的狭义控件 用过To ...
- ATL向控件添加私有属性-成员变量
https://msdn.microsoft.com/zh-cn/library/cc451389(v=vs.71).aspx ------------------------------------ ...
- 【VS开发】ActiveX控件如何定制属性?
在很多场合下会存在这样的需求,那就是使用方在实际使用控件之前就想控件已经做了相应的处理比如加载的控件版本不正确等,或者需要在加载时才确定能够使用的功能集:这个时候传统的配置文件已经无法满足这种类型的需 ...
- WPF系列 —— 控件添加依赖属性
依赖属性的概念,用途 ,如何新建与使用.本文用做一个自定义TimePicker控件来演示WPF的依赖属性的简单应用. 先上TimePicker的一个效果图. 概念 和 用途:依赖属性是对传统.net ...
- WPF对某控件添加右键属性
代码创建右键属性 ContextMenu cm = new ContextMenu(); MenuItem mi = new MenuItem(); mi.Header = "打开此文件所有 ...
- Delphi 编写ActiveX控件(OCX控件)的知识和样例(有详细步骤)
一.ActiveX应用情况简介: ActiveX控件也就是一般所说的OCX控件,它是 ActiveX技术的一部分.ActiveX是微软公司推出的基于组件对象模型COM的技术,包括对Windows 32 ...
- 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 项目结构 ...
随机推荐
- 【ILSpy反编译】C# 写的程序反编译查看是不是也太容易了点吧,太恐怖了。。。
最近由于要写一些界面的东西,写了几个月c#(之前一直做c/c++项目),发现c#写界面很方便,效果也不错,在这个过程中也听说c#程序可以很容易被反编译到,但一直也没时间去自己反编译去试着看看,心想就算 ...
- Belkasoft Evidence Center could handle Chinese characters well
I've been using Belkasoft Evidence Center for a very long time. It could handle Chinese characters w ...
- 007Linux在线升级yum
1.Linux下如何安装软件:利用rpm命令进行安装: 2.rpm优点:安装过程很简单,不需要做额外的配置逻辑,拿到安装包,通过rpm命令就可以安装: 3.rpm缺点: (1)需要自己四处去找和系统版 ...
- s3c6410_u-boot-2010.03移植
开发环境: 开发板 FriendlyARM Tiny6410 主机 CentOS release 6.4 (Final) 参考: http://www.cnblogs.com/plinx/archiv ...
- CTest
一.初识CTest CTest是CMake集成的一个测试工具,在使用CMakeLists.txt文件编译工程的时候,CTest会自动configure.build.test和展现测试结果 CTest有 ...
- ASP.NET MVC5 高级编程 第5章 表单和HTML辅助方法
参考资料<ASP.NET MVC5 高级编程>第5版 第5章 表单和HTML辅助方法 5.1 表单的使用 5.1.1 action 和 method 特性 默认情况下,表单发送的是 HTT ...
- C#中string[ ] args是什么意思,又有什么用呢
转载:http://blog.sina.com.cn/s/blog_8b7263d1010172jv.html C#控制台程序中static void Main(string[ ] args) str ...
- MySQL的相关概念介绍
MySQL 为关系型数据库(Relational Database Management System), 这种所谓的"关系型"可以理解为"表格"的概念, 一个 ...
- PHP JS HTML ASP页面跳转代码 延时跳转代码 返回到上一界面并刷新 JS弹出指定大小的新窗口
1.PHP延时跳转代码 //跳转到浏览界面 header("Refresh:1;url=machine_list.php"); //不延时 <?php header(&quo ...
- asp.net中两款文本编辑器NicEdit和Kindeditor
过Web开发的朋友相信都使用过富文本编辑器,比较出名的CuteEditor和CKEditor很多人应该已经使用过,在功能强大的同时需要加载的东西也变得很多.下面要推荐的两款富文本编辑器都是使用JS编写 ...