Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.05.2007, 05:32
Dharmakaja вне форума Посмотреть профиль Отправить личное сообщение для Dharmakaja Найти все сообщения от Dharmakaja
  № 1  
Ответить с цитированием
Dharmakaja

Регистрация: May 2007
Сообщений: 2
По умолчанию двойной клик для раскрытия на весь экран видео в плейере

народ, подскажите, плиз, как сделать, чтобы при просмотре видео на сайте через какой-нибудь флэш-плейер по типу "ю тьюб", двойным кликом можно было развернуть картинку на весь экран. в экшн-скриптах я совершенно не разбираюсь, поэтому, если не затруднит, с подробностями.

заранее огромное спасибо!!!

Старый 24.05.2007, 11:45
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от Dharmakaja
народ, подскажите, плиз, как сделать, чтобы при просмотре видео на сайте через какой-нибудь флэш-плейер по типу "ю тьюб",
И как это вы так умудрились сделать плеер, когда:
Цитата:
Сообщение от Dharmakaja
в экшн-скриптах я совершенно не разбираюсь,
а?

Копаем в сторону MouseEvent.DOUBLE_CLICK и displayState.

Старый 02.07.2007, 19:42
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 3  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Цитата:
Сообщение от __etc
Копаем в сторону MouseEvent.DOUBLE_CLICK и displayState.
В среде flash8 можно как-то такое сделать?

Старый 24.05.2007, 23:33
Dharmakaja вне форума Посмотреть профиль Отправить личное сообщение для Dharmakaja Найти все сообщения от Dharmakaja
  № 4  
Ответить с цитированием
Dharmakaja

Регистрация: May 2007
Сообщений: 2
так плейер я не делал, готовый был)) спасибо за ответ. не уверн, что получится, но буду пробовать.

Старый 02.07.2007, 20:00
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 5  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
displayState только если плеер, кажется, выше .28 версии.
А DOUBLE_CLICK надо свой ваять.

Старый 02.07.2007, 20:20
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 6  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Мне главное до displayState добраться. Компилятор пишет, что нет свойства displayState у Stage (в справке тоже ничего не нашел). Есть какие-то другие методы, чтобы растянуть изображение на весь экран? ( У меня ide flash8).
Както нехочется из-за одного нового метода старейшего класса переходить на CS3.


Последний раз редактировалось this.create; 02.07.2007 в 20:22.
Старый 02.07.2007, 21:22
BigDan вне форума Посмотреть профиль Отправить личное сообщение для BigDan Найти все сообщения от BigDan
  № 7  
Ответить с цитированием
BigDan
 
Аватар для BigDan

Регистрация: Apr 2006
Адрес: Kiev
Сообщений: 1,675
Отправить сообщение для BigDan с помощью ICQ
Цитата:
Есть какие-то другие методы, чтобы растянуть изображение на весь экран? ( У меня ide flash8).
Код:
fscommand("fullscreen",true);

Старый 02.07.2007, 21:54
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 8  
Ответить с цитированием
this.create

Регистрация: Feb 2007
Сообщений: 264
Спасибо, я попробую конечно. Только вот что настораживает:
Цитата:
  • None of the commands described in the table are available in web players.
BigDan
Попробывал. Работает. Но только если не в броузере. А мне нужно в броузере.


Последний раз редактировалось this.create; 02.07.2007 в 22:27.
Старый 02.07.2007, 22:41
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Код:
Stage["displayState"] = …

Старый 02.07.2007, 23:15
this.create вне форума Посмотреть профиль Отправить личное сообщение для this.create Найти все сообщения от this.create
  № 10  
Ответить с цитированием
this.create

Регистрация: 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 обеспечивает оповещение при переходе или выходе из данного режима:

Код:
EventListener.onFullScreen = function( bFull:Boolean ){}
Stage.addListener( EventListener );
Аргумент типа 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 );
Событие AS3 FullScreenEvent, расширяющее ActivityEvent. FullScreenEvent имеет атрибут типа Boolean fullScreen, показывающее, находится ли фильм в полноэкранном режиме (true) или нет (false).

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.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 17:35.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.