阅读:2142回复:0
一个关于XPCOM问题的,来自新手的求教,十分感谢任何回复!
小弟现在正在做基于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的教程我看过了,好象不是很懂的样子... |
|