Закрытие Flash Player в ярлыке Flash

Есть ли ярлык для закрытия Flash Player во Flash? Меня до смерти раздражает, когда приходится каждый раз нажимать


person dd .    schedule 20.07.2009    source источник


Ответы (3)


Flash Player 9.0.115.0 добавляет flash.system.System.exit... так что вы можете слушать на любом пользовательском введите событие и закройте его, если вы используете AS3 и соответствующий проигрыватель...

приветствие

back2dos

person back2dos    schedule 21.07.2009

Извините, back2dos, но flash.system.System.exit работает только в AIR. В браузере выдает, что "выход доступен только в автономном режиме". Если вы хотите выйти по-старому, закройте окно браузера.

Но вы можете стать очень умным, чтобы сделать больше...

У меня была ситуация, когда я хотел выйти из приложения Flash и вернуться на ту же страницу, где Javascript затем выполнял некоторую работу и, возможно, перезапускал приложение Flash. Для этого создайте в шаблоне индекса функцию javascript, которую можно будет вызывать из Flash.

Аргументы (любое количество аргументов) могут быть любыми, которые вы хотите передать, но суть в том, что Javascript перезапустит ту же страницу, но передаст ей параметры следующим образом:

Добавьте в свой шаблон индекса html:

 function relaunch(arg1, arg2){
    window.onbeforeunload = allowClose;
    var url = assembleUrl(document.URL, arg1);
    url = assembleUrl(url, arg2);
    window.open(url, "_self", "", true);
 }
 function allowClose(){}                   

Хорошо, теперь у вас, вероятно, есть еще пара вопросов.

Прежде всего, assembleUrl() — это функция javascript, которую вы пишете для добавления аргументов к вашему URL-адресу по своему усмотрению. В конце концов, вы будете писать html/javascript, который считывает и обрабатывает эти аргументы.

Во-вторых, функция allowClose() устраняет необходимость подтверждения пользователя при выходе из вашего приложения Flash. Обратите внимание, что между фигурными скобками ничего нет — важная особенность.

Как вы называете это из Flash?

 flash.external.ExternalInterface.call("relaunch", arg1, arg2);   

И это прекрасно работает не только в старом Flash, но и в FB4/Flash10/Spark.

Удачи, Джим

person Jim Clack    schedule 22.01.2010

Ну, краткий ответ: нет, прямого пути нет.

Более длинный ответ: вы можете просто использовать Ctrl + Enter для проверки и Ctrl + W, чтобы закрыть (Ctrl + W закрывает окно flash player). Потому что Ctrl + Enter выводит тест на передний план и фокусируется на том, что может сработать.

Command + Enter и Command + W для компьютеров Mac.

Это должно быть хорошо на приличной машине с небольшими проектами, где вы быстро тестируете вещи.

person Bryan Hare    schedule 20.07.2009
comment
Он закрывает окно Flash Player, но не возвращает фокус в «Действия — Кадр». Даже при кодировании в FlashDevelop как проект AS мне приходится перемещать руку с клавиатуры на мышь. - person dd .; 21.07.2009