#java #netbeans #avi #javahelp
#java #netbeans #avi #javahelp
Вопрос:
Я создаю некоторый справочный контент для приложения (построенного на NetBeans) и подумал, что в некоторых случаях было бы полезно иметь возможность показывать обучающее видео в JavaHelp или иметь ссылку для открытия видео.
Я бы предположил, что это было бы возможно с помощью <OBJECT>
тега, возможно, но я не знаю, какой объект для встраивания. То немногое, что я знаю о JavaHelp, я получил отhttp://download.java.net/javadesktop/javahelp/jhug.pdf , и из этого я делаю вывод, что я должен получить какой-нибудь легкий Java-компонент, способный воспроизводить файл .avi, и встроить его с <object>
тегом. Или, скорее, есть ссылка в справке, которая открывает файл .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 находится в том же проекте NetBeans, что и javahelp-html, и пакет, в котором находится testButton, является общедоступным. Есть идеи?
Правка2: Хорошо, итак, я изучил это еще немного. Кажется, что в конечном итоге класс com.sun.java.help.impl.CustomKit$CustomDocument
попытается выполнить
getClass().getClassLoader().loadClass("my.module.TestButton")
И это приведет к исключению ClassNotFoundException. Это может быть, если я правильно понял, потому что загрузчик классов, который будет использоваться, найдет только классы, которые находятся в
вызывается модуль netbeans JavaHelp Integration
. И среди них нет my.module.TestButton
. So… Я снова застрял. Я не думаю, что смогу легко добавить что-либо в этот модуль.
.
Ответ №1:
Я не знаю ни одного способа встраивания видео в JavaHelp таким образом. Но вы должны иметь возможность создавать обычную гиперссылку на HTML-файл, встраивающий видео (каким-либо образом), для использования из внешнего браузера. http://bits.netbeans.org/dev/javadoc/org-netbeans-modules-javahelp/org/netbeans/api/javahelp/doc-files/api.html#external-links показывает, как создавать ссылки.
Если вы хотите, чтобы это работало в автономном режиме, включите HTML в свой набор файлов NBM и используйте протокол URL nbinst; например, если в release/docs/helpvid.html
в исходниках (для проекта NBM на основе Ant), nbinst://my.module.code.name.base/docs/helpvid.html
следует ссылаться на него при установке приложения. Насколько я знаю, обработчик ссылок модуля JavaHelp преобразует URL-адрес в эквивалентный URL-адрес file
протокола перед передачей его настроенному веб-браузеру (по умолчанию используется Desktop.browse
в JDK 6 ).
Ответ №2:
Я знаю, что это не ответ, но ссылки на некоторые видео YouTube часто бывает достаточно. И вы получаете высококачественные видеоролики без необходимости их развертывания в установщике.
Комментарии:
1. Да, это могло бы быть достаточным решением, но, к сожалению, большинство компьютеров, которые будут использовать приложение, не будут иметь доступа в Интернет :-/ В любом случае спасибо!