在JavaHelp中嵌入.avi?

时间:2011-10-18 09:06:48

标签: java netbeans avi javahelp

我正在为应用程序(基于NetBeans构建)创建一些帮助内容,并认为在某些情况下能够在JavaHelp中显示教程视频或者有一个打开视频的链接会很有用。

我想可能会使用<OBJECT>标签,但我不知道要嵌入哪个对象。我从http://download.java.net/javadesktop/javahelp/jhug.pdf获得的JavaHelp知之甚少,从中得出结论,我应该得到一些能够播放.avi并将其嵌入<object>标签的轻量级Java组件。或者在帮助中有一个链接,在单独的窗口中打开.avi。

有没有人对如何做到这一点有任何指示?

编辑:

我已经尝试过添加自己的轻量级组件,但没有成功。所以我想知道我是否将组件放在错误的位置。如果我尝试使用

将JButton添加到JavaHelp中
 <object 
     classid="java:javax.swing.JButton">
 </object>

它出现在JavaHelp中就好了。

如果我尝试自己的按钮,比如

 <object 
     classid="java:my.module.TestButton">
 </object>

我只是得到了几个红色的“???”

TestBytton类只是

package my.module;

import javax.swing.JButton;

public class TestButton extends JButton{

}

TestButton位于与javahelp-html相同的NetBeans项目中,而TestButton所在的包是公共的。有什么想法吗?

EDIT2: 好的,所以我更多地研究了这个。似乎最终班级com.sun.java.help.impl.CustomKit$CustomDocument会尝试做

getClass().getClassLoader().loadClass("my.module.TestButton")

这将导致ClassNotFoundException。这可能是因为我理解正确,因为将使用的类加载器将只找到在中的类 netbeans模块名为JavaHelp Integration。其中不是my.module.TestButton。所以...我再次陷入困境。我认为我不能轻易地为该模块添加任何内容。

2 个答案:

答案 0 :(得分:1)

我不知道用JavaHelp这种方式嵌入视频的方法。但您应该能够创建一个到嵌入视频的HTML文件的常规超链接(以某种方式),以便从外部浏览器使用。 http://bits.netbeans.org/dev/javadoc/org-netbeans-modules-javahelp/org/netbeans/api/javahelp/doc-files/api.html#external-links显示了如何建立链接。

如果您希望离线工作,请在您的NBM文件集中包含HTML并使用nbinst URL协议;例如,如果在源release/docs/helpvid.html中(对于基于Ant的NBM项目),nbinst://my.module.code.name.base/docs/helpvid.html应该在应用程序的安装中链接到它。据我所知,JavaHelp模块的链接处理程序将URL转换为等效的file - 协议URL,然后将其传递给配置的Web浏览器(默认为JDK 6 +上的Desktop.browse)。

答案 1 :(得分:0)

我知道这不是答案,但通常会链接到一些YouTube视频。而且您无需在安装程序中部署它们即可获得高质量的视频。