![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|
|
|||||
|
Регистрация: May 2007
Сообщений: 2
|
народ, подскажите, плиз, как сделать, чтобы при просмотре видео на сайте через какой-нибудь флэш-плейер по типу "ю тьюб", двойным кликом можно было развернуть картинку на весь экран. в экшн-скриптах я совершенно не разбираюсь, поэтому, если не затруднит, с подробностями.
заранее огромное спасибо!!! |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Цитата:
Цитата:
Копаем в сторону MouseEvent.DOUBLE_CLICK и displayState. |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
Цитата:
|
|
|||||
|
Регистрация: May 2007
Сообщений: 2
|
так плейер я не делал, готовый был)) спасибо за ответ. не уверн, что получится, но буду пробовать.
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
displayState только если плеер, кажется, выше .28 версии.
А DOUBLE_CLICK надо свой ваять. |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
Мне главное до displayState добраться.
Компилятор пишет, что нет свойства displayState у Stage (в справке тоже ничего не нашел). Есть какие-то другие методы, чтобы растянуть изображение на весь экран? ( У меня ide flash8).Както нехочется из-за одного нового метода старейшего класса переходить на CS3. Последний раз редактировалось this.create; 02.07.2007 в 20:22. |
|
|||||
|
Цитата:
|
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
Спасибо, я попробую конечно. Только вот что настораживает:
Цитата:
Попробывал. Работает. Но только если не в броузере. А мне нужно в броузере. Последний раз редактировалось this.create; 02.07.2007 в 22:27. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
|
|
|||||
|
Регистрация: Feb 2007
Сообщений: 264
|
Спасибо большое __etc!
Поискал в гугле и нашел интересную статью. Выкладываю здесь, так как по ссылке, которую выдает гугл ее нет (статья взята из кэша гугла). Вот ссылка: http://gorbatov.org/tutorials/FullScreenSupport.html Введение Полноэкранный режим поддерживался раньше только в stand-alone плеере и projector файлах. Теперь добавлена возможность использования полноэкранного режима в plug-in и ActiveX версиях плеера. Полноэкранный режим не поддерживается для режимов windowless и transparent. Если пользователь использует несколько мониторов, то Flash Player определяет, какой монитор показывает наибольшую часть фильма и включает полноэкранный режим для этого монитора. Для использования этого режима должен быть установлен плеер версии 9,0,18,60 или выше. На Intel Macs текущая версия плеера 9,0,20,0, но для использования режима должна быть 9,0,18,60. Безопасность * Для использования полноэкранного режима необходимо добавить новый параметр тегов <object> и <embed> allowFullScreen в HTML код. По умолчанию он является false, что не поддерживает полноэкранный режим. Для его включения необходимо задать allowFullScreen равным true в <object>/<embed> тегах. * Поверх всего при полноэкранном режиме возникнет диалоговое окно, показывающее как выйти из этого режима. Через несколько секунд окно исчезнет. * ActionScript код, инициализирующий полноэкранный режим, может быть вызван только в ответ на нажатие клавиши или мыши. В остальных ситуациях он будет проигнорирован. * Пользователи не могут вводить текст в полноэкранном режиме. Все клавиатурные события отключены в этом режиме, кроме клавиш выхода из этого режима. Эти ограничения относятся к plug-in и ActiveX версиях, но не к stand-alone плееру или projector файлам. ActionScript API Появилось несколько новых ActionScript методов в ActionScript 2.0 и ActionScript 3.0 для включения и выключения полноэкранного режима и соответствующих событий, оповещающих о начале или конце данного режима. ActionScript 2.0 Stage.displayState:String property Это свойство можно прочитать и установить. Возможные значения: * fullScreen * normal Свойство используется для проверки текущего режима фильма для перехода или выхода из полноэкранного режима. Слушатель события объекта Stage обеспечивает оповещение при переходе или выходе из данного режима: Аргумент типа Boolean показывает, находится ли фильм в полноэкранном режиме (true) или нет (false). ActionScript 3.0 flash.display.Stage.displayState:String property Это свойство можно прочитать и установить. Возможные значения: * StageDisplayState.FULL_SCREEN * Stage.DisplayState.NORMAL Свойство используется для проверки текущего режима фильма для перехода или выхода из полноэкранного режима. Слушатель события объекта Stage обеспечивает оповещение при переходе или выходе из данного режима: fullScreenHandler = function( event:FullScreenEvent ) {};
stage.addEventListener( FullScreenEvent.FULL_SCREEN, fullScreenHandler );
ActionScript 3.0 сгенерирует ошибку безопасности в plug-in или ActiveX версиях, если вышеперечисленные условия безопасности не будут соблюдены, а состояние будет установлено как StageDisplayState.FULL_SCREEN. Использование нового ActionScript Чтобы использовать новую возможность, необходимо обновить установленную версию Flash Professional или Flex. Файлы для обновления находятся в этом zip архиве. Если используется ActionScript 3.0 с preview-релизом Flash Professional 9, необходимо перезаписать файл playerglobal.abc из архива в папку установки Flash 9: Flash 9 Public Alpha/en/Configuration/ActionScript 3.0/playerglobal.abc Для использования нового ActionScript с Flex или Flex Builder, необходимо обновить Flex SDK. Скопируйте playerglobal.swc в папку: Flex Builder 2/Flex SDK 2/frameworks/libs/playerglobal.swc Если используется ActionScript 2.0 необходимо вручную отредактировать класс Stage.as, который находится в папке: Flash 8/First Run/Classes/FP8/Stage.as Добавьте новое свойство: static var displayState:String; В противном случае пришлось бы использовать плохой синтаксис: Stage["displayState"] = "fullScreen"; а так намного лучше: Stage.displayState = "fullScreen"; Масштабирование Поведение при масштабировании зависит от параметра scaleMode в ActionScript или в тегах <object> и <embed>. По умолчанию scaleMode равен showAll, то есть при полноэкранном режиме фильм будет растянут на весь экран при поддержке пропорций. Если необходимо поддерживать масштабирование программно, то следует установить scaleMode равным noScale. Это улучшит производительность при просмотре видео на медленных машинах, так как просмотр в полный экран требует больших ресурсов. Клавиатурные сокрашения Для выхода из полноэкранного режима используются Escape (Windows и Mac OS), Control+W (Windows), Command+W (Mac OS) и Alt+F4 (Windows). HTML для полноэкранного режима <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0" width="600" height="400" id="fullscreen" align="middle"> <param name="allowFullScreen" value="true" /> <param name="movie" value="fullscreen.swf" /> <param name="bgcolor" value="#333333" /> <embed src="fullscreen.swf" allowFullScreen="true" bgcolor="#333333" width="600" height="400" name="fullscreen" align="middle" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </object> Темплейты публикации для Flash Чтобы автоматически публиковать HTML файл фильма с поддержкой полноэкранного режима, необходимо скопировать файл из архива Flash_with_FullScreen.html в папку темплейтов: Flash 8/en/First Run/HTML/ Перезапустите Flash. В Publish Settings вкладке HTML выберите "Flash with Full Screen Support." Темплейты публикации для Flex Builder В файлы обновлений добавлены HTML-шаблоны для использования во Flex Builder. Это модифицированные версии шаблонов "express-installation" и "express-installation-with-history". Чтобы использовать эти шаблоны, необходимо 1. Удалить все файлы из папки "html-template" проекта. 2. Скопировать файлы из папки "full-screen-support" или "full-screen-support-with-history" в папку "html-template" проекта. Примеры приложений В качестве примера показаны приложения, в которых добавлен элемент FullScreen, с помощью которого можно перейти в полноэкранный режим и выйти из него, в контекстное меню мувика. Создайте какой-нибудь мувиклип mc и добавьте следующий ActionScript в первй кадр: ActionScript 2.0 // функции входа и выхода в/из режима
function goFullScreen()
{
Stage["displayState"] = "fullScreen";
}
function exitFullScreen()
{
Stage["displayState"] = "normal";
}
// функции включения/выключения элементов контекстного меню
function menuHandler(obj, menuObj)
{
if (Stage["displayState"] == "normal")
{
// если мы в нормальном режиме, добавляем элемент 'go full screen' и убираем 'exit'
menuObj.customItems[0].enabled = true;
menuObj.customItems[1].enabled = false;
}
else
{
// иначе - наоборот
menuObj.customItems[0].enabled = false;
menuObj.customItems[1].enabled = true;
}
}
// создаем новое контекстное меню
var fullscreenCM:ContextMenu = new ContextMenu(menuHandler);
// скрываем встроенные элементы
fullscreenCM.hideBuiltInItems();
// добавляем элемент для перехода в контекстное меню
var fs:ContextMenuItem = new ContextMenuItem("Go Full Screen", goFullScreen);
fullscreenCM.customItems.push( fs );
var xfs:ContextMenuItem = new ContextMenuItem("Exit Full Screen", exitFullScreen);
fullscreenCM.customItems.push( xfs );
// прикрепляем меню к мувиклипу или куда-нибудь еще
_root.menu = fullscreenCM;
Последний раз редактировалось this.create; 02.07.2007 в 23:31. |
![]() |
![]() |
Часовой пояс GMT +4, время: 17:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|