在JavaHelp中嵌入.avi



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

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

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

编辑:

我尝试了更多的添加我自己的轻量级组件,但没有成功。所以我想知道我是否把组件放在了错误的地方。如果我尝试用

向JavaHelp添加JButton
 <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。所以…我又被卡住了。我认为我不能轻易地给那个模块添加任何东西。

我不知道有什么方法可以在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)。

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

相关内容

  • 没有找到相关文章

最新更新