yinyuanqings
小狐狸
小狐狸
  • UID30395
  • 注册日期2009-09-16
  • 最后登录2009-09-16
  • 发帖数2
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
阅读:1955回复:0

一个关于XPCOM问题的,来自新手的求教,十分感谢任何回复!

楼主#
更多 发布于:2009-09-16 13:20
小弟现在正在做基于MOZILLA 的SUNBIRD的2次开发,不知道为何这个论坛没有SUNBIRD 专区? 只好发在这里了,不胜赐教!!
问题是这样的:
我要在一个javascript的类文件中,增加一个方法,并且可以让该方法被外界引用,我发现这似乎要牵涉到对XPCOM 控件的修改,因为引出这个类对象的代码是这样的:
Javascript文件中:
getCompositeCalendar.mObject = Components.classes["@mozilla.org/calendar/calendar;1?type=composite"].createInstance(Components.interfaces.calICompositeCalendar);

而这个类对象的方法实体,又是定义在另外一个js文件中,例如该对象有一个refresh方法,那么在js 代码中,用getCompositeCalendar.mObject.refresh()就可以使用这个方法.

但是如果我要在这个类文件中增加一个导出方法(假设是方法A),是不是应该要修改XPT文件? 我个人的理解是这样的: 修改XPT文件,让控件有个公开的导出方法A -> 在导出方法A中,声明引用至哪个JS文件,在JS文件中定义方法的实体 ->然后在JAVASCRIPT中就可以引用 getCompositeCalendar.mObject.A()方法了.

请问我的想法对吗? 如果是的话,应该怎样编译XPT文件呢? 是否有可用的教程啊? MOZILLA的关于XPCOM的教程我看过了,好象不是很懂的样子...
游客

返回顶部