New Document

“挨踢”业的白领民工誓要成为“挨踢”业的金领民工! 在中国特色软件链条上,我真实的感到--- TMD !!! 好像离我的理想越来越远啦!!! 我的最终理想:~有钱~有玩的时间~最终要的是有晒太阳的时间~

 








处理 SSI 文件时出错


  • 日志:57
  • 评论:20
  • 留言:3
  • 访问:

 

  

 

如何调试和使用ActiveX控件。
□eliming 发表于 2006-2-15 16:26:00

如何调试和使用ActiveX控件。

  由于控件并不能单独运行,所以你必须利用另一个程序来装载控件并进行调试,VC中提供了ActiveX容器供使用,在工程/设置菜单(project/setting)中选择Debug页并选择ActiveX Container

  然后开始调试,进入ContainerVC会提示Container中是没有调试代码的错误,不用理会并继续。

  进入Container后首先要装载你所需要调试的控件,选择菜单Edit/Insert OLE Control...,在弹出的对话框中选择你需要插入的控件。

如果Container 成功创建了控件在屏幕中就会显示出控件,根据上节的内容我们可以看到控件中显示了一串字符,接下来我们需要测试一下控件所提供的方法是否能够正确运行。请 选择菜单Edit/Invoke Methods...,在弹出的对话框上选择你要使用的方法,但你选择了方法后,对话框上的参数输入区会显示输入参数的列表,你输入参数后按下 Invoke按钮就可以执行。

  在调试时你可以如同调试其他程序一样在代码中使用TRACE宏,也可以设置断点。

其实你在插入控件时会看见其他在系统中已经注册的控件,如果有兴趣可以自己试试加载几个看看效果。

如果要在VC 的工程中使用已经存在的ActiveX控件,最简单的方法就是利用VC的插入功能,在菜单中选择Project/Add To Project/Component and Control(在不同版本的VC中可能菜单位置不同),然后选择插入的控件,VC会为你生成这个控件的定义文件,当然和你最开始编写的会完全不一样,但 是没有关系。你会在定义文件看见这个控件所实现的方法和属性,这些都可以让你通过函数的方式进行调用。(所以在使用控件时如果没有该控件的说明是很难使用 的)

还有一种方法就是在对话框中插入一个控件。如果该控件的定义文件没有生成VC也可以帮助你生成。

  在对话框中的控件是不需要手工创建的,但是如果你希望在其他地方创建窗口就需要调用控件的创建函数,其实这个函数很简单,和CWnd::Create函数定义的区别不大。定义为:

 
class CATLSam : public CWnd
{
BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle, 
                 const RECT& rect, CWnd* pParentWnd, UINT nID, 
                 CFile* pPersist = NULL, BOOL bStorage = FALSE, 
                 BSTR bstrLicKey = NULL)

可以使用如下方式调用:

Create("window text",WS_CHILD|WS_VISIBLE|WS_BORDER,CRect(0,0,200,200),this,1001);

  由于是CWnd的派生类所以CWnd的相关功能都可以使用。在程序中创建了控件窗口后就可以调用控件的各种方法(对属性的控制也是通过函数调用来实现的,在前面的教程中我们已经认识到这点)。

  在控件创建后就可以使用控件的各种属性和方法,由于控件是你自己编写的所以调用起来应该不会有什么问题。

 



请教个问题
4me(游客)发表评论于2006-7-14 20:38:00
一般不会阿,实际你就是加了个控件。 你用的编译工具是什么版本?要不 你生成新项目,添加一个其他的OCX控件编译一下试试。若还是有问题,估计就是编译工具的问题了

□个人主页 | 引用 | 返回 | 删除 | 回复
 

处理 SSI 文件时出错

发表评论:

    昵称:
    密码: (游客无须输入密码)
    主页:
    标题:
    页面数据载入