第18章、ActiveX控件
1. 可以把ActiveX控件看做是一个极小的服务器应用程序,它不能独立运行,必须嵌入到某个容器一起运行,与该容器一起运行;
2. OCX是ActiveX控件的一种后缀名;,但是ActiveX控件对应的文件也可以是其他后缀名,例如DLL
3. 作为一个典型的ActiveX控件,它具有方法,属性、事件这三个特性;
4. 一个文件中可以包含多个ActiveX控件;
5. 对ActiveX控件来说,它的底层实际上是采用COM技术实现的;
6. 调度映射是MFC提供的一种映射机制,主要是为了让外部应用程序可以方便地访问控件的属性和方法,而事件映射也是MFC提供的一种映射机制,让控件可以向包含它的容器发送事件通知;
7. 接口是控件与外部程序进行通信的协议,可以把接口看做是函数的集合,外部程序通过这个接口所暴露出来的方法去访问控件的属性和方法;
8. 在生成控件时,VC++编译器会调用regsvr32程序去注册控件,将该控件的所有信息,包括其所在路径都写入注册表中。
所有的ActiveX控件必须在注册之后才能使用;
9. 如果要获取当前系统时间,可以使用CTime类的静态方法:GetCurrentTime,该函数将返回表示系统当前时间的CTime对象,之后就可以利用CTime对象的Format方法对得到的CTime类型的时间进行格式化,返回一个CString类对象;
CTime time=CTime::GetCurrentTime();
CString str=time.Format(“%H:%M:%S”);
Pdc->TextOut(0,0,str);
10. 在C**Ctrl类中有一个DoPropExchange函数,该函数提供了对控件属性持久性的支持,可以在此函数为每一个具有持久性的自定义属性调用PX_开头的函数;
11. 在VC中,对属性和方法都是通过相应的函数来访问的;
12. 如果直接在对话框资源上插入ActiveX控件,它并不会为工程增加控件类;