2011-10-18 12 views
8

Estoy creando contenido de ayuda para una aplicación (basado en NetBeans), y pensé que sería útil en algunos casos para poder mostrar un video tutorial dentro de JavaHelp o tener un enlace para abrir un video.¿Incrustar .avi en JavaHelp?

Me imagino que sería posible usar la etiqueta <OBJECT> quizás, pero no sé qué objeto insertar. Lo poco que sé de JavaHelp que obtuve del http://download.java.net/javadesktop/javahelp/jhug.pdf, y de ahí concluyo que debería obtener algún componente liviano de Java capaz de reproducir un .avi e incrustarlo con la etiqueta <object>. O más bien tenga un enlace en la ayuda que abre el .avi en una ventana separada.

¿Alguien tiene alguna sugerencia sobre cómo se hace esto?

Editar:

He intentado un poco más en la adición de un componente de peso ligero de la mía, pero sin éxito. Entonces me pregunto si estoy colocando el componente en el lugar equivocado. Si trato de añadir un JButton a la JavaHelp con

<object 
    classid="java:javax.swing.JButton"> 
</object> 

aparece en el JavaHelp bien.

si intento un botón de mi propia, como

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

apenas consigo un par de rojo "???"

El TestBytton clase es simplemente

package my.module; 

import javax.swing.JButton; 

public class TestButton extends JButton{ 

} 

El TestButton reside en el mismo proyecto de NetBeans como el javahelp-HTML, y el paquete de la TestButton radica en es público. ¿Algunas ideas?

Edit2: Ok, ya lo he investigado un poco más. Parece que con el tiempo la clase com.sun.java.help.impl.CustomKit$CustomDocument tratará de hacer un

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

Y eso se traducirá en una ClassNotFoundException. Eso podría ser si lo entendiera correctamente porque el cargador de clases que se utilizará solo encontrará las clases que se encuentran en el módulo netbeans llamado JavaHelp Integration. Y entre esos no están my.module.TestButton. Entonces ... estoy atascado una vez más. No creo que pueda agregar nada a ese módulo fácilmente.

.

Respuesta

0

Sé que esta no es la respuesta, pero la vinculación a algunos videos de YouTube a menudo es suficiente. Y obtienes videos de alta calidad sin tener que implementarlos en el instalador.

+0

Sí, eso podría haber sido una solución suficiente, pero desafortunadamente la mayoría de las computadoras que usarán la aplicación no tendrán acceso a internet: - ¡Gracias de todos modos! – bjarven

1

No conozco ninguna forma de insertar video en JavaHelp de esta manera. Pero debería poder crear un hipervínculo regular a un archivo HTML que incorpore el video (de alguna manera), para usar desde un navegador externo. http://bits.netbeans.org/dev/javadoc/org-netbeans-modules-javahelp/org/netbeans/api/javahelp/doc-files/api.html#external-links muestra cómo hacer los enlaces.

Si desea que esto funcione sin conexión, incluya el código HTML en su conjunto de archivos NBM y use el protocolo nbinst URL; por ejemplo, si está en release/docs/helpvid.html en las fuentes (para un proyecto NBM basado en Ant), nbinst://my.module.code.name.base/docs/helpvid.html debería vincularse a él en la instalación de la aplicación. Por lo que sé, el manejador de enlaces del módulo JavaHelp convertirá la URL a una URL de protocolo file equivalente antes de pasarla al navegador web configurado (por defecto es Desktop.browse en JDK 6+).