如何在ActiveX控件中使用字体
2008-02-26 20:27:03 来源:WEB开发网字体的使用是ActiveX控件制作过程中不可缺少的部分。本文将深入浅出地介绍在ActiveX控件中制作过程中如何使用字体。本文所提及的ActiveX控件制作是指利用VC++6.0的MFC ActiveX ControlWizard 工具,用其它方法制作 ActiveX 控件本文不作讨论。
本文专门设置了一些例程,以便您能够更好地掌握这些内容。这些例程都是完整的ActiveX控件制作源代码。为了突出重点,本文仅对字体使用相关部分的源代码作较详细的介绍,其余部分的代码本文不作过多讨论。字体作为一种属性在ActiveX控件中使用,与其它属性没有区别,同样分为库存属性和自定义属性,本文将分四个部分进行介绍。
- 第一部分 在控件中使用库存字体(Stock Font)属性
- 第二部分 在控件中使用自定义的字体(Custom Font)属性
- 第三部分 使用多种字体
- 第四部分 优化代码,合理地使用多种字体
第一部分 在控件中使用库存字体(Stock Font)属性
使用ClassWizard 添加 Font库存属性的步骤:
- 打开控件工程, 单击View菜单的ClassWizard打开ClassWizard;
- 单击Automation标签;
- 在Class Name框,选择你的控件类名;
- 单击Add Property;
- 在 External name框, 单击Font;
- 单击 OK;
- 单击 OK确认你的选择并关闭 ClassWizard;
ClassWizard将在控件类的执行文件的dispatch映射表中加入下列行:
DISP_STOCKPROP_FONT()
另外, ClassWizard 在.ODL 文件中加入下列行:
[id(DISPID_FONT), bindable] IFontDisp* Font;
例程1:Label.ocx
下面,我们举一个具体的实例详细演示如何在控件中添加Font库存属性。您可以下载该例程进行编译生成 .ocx 控件,并测试该控件。
我们将要制作的控件取名Label.ocx,模仿VB工具箱中的Label控件。该控件增强了VC++工具箱中的Static Text控件的有限的功能,您可以方便地在您的工程中使用。例程的工程名也取名为Label。
创建Label工程
打开Visual C++ 6.0,单击File菜单的New,弹出New对话框。在对话框中选择MFC ActiveX ControlWizard,并输入工程名Label,单击OK按钮,关闭该对话框并弹出MFC ActiveX ControlWizard-Step 1 of 2对话框。如图1-1。
图1-1
更多精彩
赞助商链接