Код магнитолы

JS - телефон

JS - часы

Оппозиция в России ?

Россия и Украина

Мысли в слух...

Российская...власть ?

Skype

Создаём сайт

Любимые сериалы


На главную

Говорят, что <applet> не работает...


Судя по отголоскам на форумах - внимание к апплету затухло лет 8-10 тому назад. Не обошлось здесь без мокро - мягких. Они так выхолостили ОС, что винду уже не возможно отличить от андроида. Разве-что - по внешнему виду устройства. Что-бы сторонний код заработал, его нужно прогнать через компилятор, где его пристегнут к несущему системному ядру. Так создаются exe- и apk-файлы. А сам компилятор должен быть установлен (инсталирован) на РС (это - опять exe-файл !). Другими словами : на каждый новый Java-болт тут-же придумывалась exe-гайка. Мы попробуем, по возможности, обойти все ограничения ОС Windows, а те, что не удастся обойти - постораемся учесть.
Начнём с создания файла player.java :



Проигрыватель мы будем создавать в стиле Swing + JMF и пусть AWT не обижается. Создадим проект и упакуем весь код проекта в jar-архив. Максимально упростим код - создадим только кнопку выбора (20, рис.5) и панельку (18,29, рис.5), на которую поместим эту кнопку. Все остальные компоненты нам предоставят выше-перечисленные библиотеки (API). И так - поехали (не каламбур) :
-- (05-10, рис.5) подключаем импорт;
-- (11, рис.5) создаём публичный (общедоступный) класс, который наследует JApplet и следит за кнопкой выбора;
-- (13-14, рис.5) задаём переменные;
-- (21-28, рис.5) создаём анонимный внутренний класс, обрабатывающий события кнопки select. В реализации указываем два метода-класса (25 и 26, рис.5);
-- (33-51, рис.5) реализуем вышеупомянутые методы : если нажать кнопку выбора - создаётся выборщик (35, рис.5), который открывает окно диалога (37, рис.5); если окно открылось (всякое бывает...) мы попытаемся (!) выбрать файл (39, рис.5) для прослушивания-просмотра;
-- (41-50, рис.5) создаём проигрыватель;
-- (52-60, рис.5) подключаем типовые компоненты;
-- (61-74) это - наиболее любопытный метод нашего класса и на нём стоит остановится по-подробнее :
обычно в структуре applet - класса метод main отсутствует, но нам без него не обойтись, поскольку, при создании jar-архива, в манифесте необходимо указать класс с методом main (тот, который "...один на всех");
Практически любое диалоговое приложение на Java может быть реализовано так, что оно сможет работать и как программа и как апплет (не нужно только забывать об ограничениях, налагаемых на аплеты по доступу к ресурсам машины). Именно для этого нам понадобилось реализовать метод main . В нем мы создаем объект нашего класса player (63, рис.5) , объект класса JFrame , помещаем объект класса player на фрейм, устанавливаем размер фрейма (по размеру апплета). После этого мы вызываем методы init и start , выполняя те действия, которые сделал бы браузер, если бы мы запускали апплет с его помощью. И, наконец, активизируем фрейм методом setVisible (73, рис.5).
Если присмотреться - всё это происходит...всё в том-же потоке диспетчеризации, а сам JApplet - это переделанный JFrame. Без этого к браузеру (читай - ОС) не подступиться. И пусть вас не удивляет размер окна (70, рис.5) - библиотеки не очень свежие, вполне возможна поддержка только окна 4 : 3;
-- (75-89, рис.5) этод класс контролирует местоположение компонентов панели;
-- (90, рис.5) это - просто рамочка чёрного цвета (17, рис.5) вокруг проигрывателя;
А теперь мы позаботимся о том, что-бы наш проигрыватель прилично выглядел (хотя-бы на нашем компе).

продолжить...
...вернутся