Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Окошко "Да" или "Нет" (http://www.flasher.ru/forum/showthread.php?t=129312)

Воитель 29.08.2009 19:14

Окошко "Да" или "Нет"
 
Здравствуйте.
При удалении показываю мувик-сообщение "Вы точно хотите удалить ?" В котором Два мувика-варианта "Да", "Нет".
Как сделать так чтобы пользователь мог нажать только на эти варианты и не куда больше, а то у меня выглядывают другие кнопки интерфейса.

Поидеи мне надо повесить MovieClip.trackAsMenu на мувик-сообщение, но почему то это у меня не работает. У меня даже пример из хелпа не работает. В инете как-то сухо про это.

2morrowMan 29.08.2009 19:29

Вы о чем это сейчас ? :)

mooncar 29.08.2009 19:30

Сам не пробовал, но здесь обычно советуют повесить в таком случае мувик во всю сцену и повесить на него какой-либо обработчик. Попробуйте. Поместите его между интерфейсом, подлежащим блокированию, и сообщением с выбором.
Лично сам я отключаю и включаю все активные элементы с помощью enabled.
Наример, отключаем
Код AS1/AS2:

for (i = 1; i < 11; i++) {
this["btn" + i].enabled = false;
}


Zik. 29.08.2009 19:36

Сделайте клип на весь экран
сделайте ему пустой листенер
и сделайте ему альфу = 0
и тогда кроме как "Да и "Нет" ничего больше не сможете нажать

Добавлено через 1 минуту
опоздал ^^

mooncar 29.08.2009 20:19

Вложений: 1
Делаю тоже сейчас интерфейс, подумал, что пригодится. И на скорую руку получилась такая заготовка.
Используется и visible и alpha.
Начальное alpha = 0, чтобы первоначально не было видно маски и окошка выбора при загрузке кадра.
Но для надежности используется все-таки _visible, поскольку при занулении _alpha мувик по-прежнему остается активным элементом.

Mnilionic 29.08.2009 20:33

Цитата:

ничего больше не сможете нажать
Переключусь табом на кнопку под "клип на весь экран" и жамкну энтер. Или на текстовое поле и напечатаю неприличное слово.

Незабываем включать и выключать .tabChildren.
Для этого, конечно, должна быть структура приложения продумана особо.

mooncar 29.08.2009 20:41

Цитата:

Сообщение от Mnilionic (Сообщение 846630)
Переключусь табом на кнопку под "клип на весь экран" и жамкну энтер. Или на текстовое поле и напечатаю неприличное слово.

Незабываем включать и выключать .tabChildren.
Для этого, конечно, должна быть структура приложения продумана особо.

Конечно. Поэтому защита через экран - это для недалекого пользователя.
Реально нужно писать функцию, которая в зависимости от аргумента "off" или "on" (включить-выключить интерфейс) работала бы с enabled текущих активных элементов и включала/отключала бы табуляцию.

Добавлено через 34 минуты
А вот вариант "с экраном" (который в моем предыдущем посте) с учетом сказанного Mnilionic:
Код AS1/AS2:

mask_all_mc._visible = false ;
mask_all_mc.useHandCursor = false ;
select_mc._visible = false ;
 
//кнопка удаления
del_btn.onRelease = function  () {
        mask_all_mc._visible = true ;
        mask_all_mc._alpha = 50;
        select_mc._visible = true ;
        select_mc._alpha = 100;
        mask_all_mc.onRollOver = function  () {
        };
        _level0.tabChildren = false ;
 
}
//кнопка подтверждения
select_mc.ask_del_btn.onRelease = function  () {
        mask_all_mc._visible = false ;
        mask_all_mc._alpha = 0;
        select_mc._visible = false ;
        select_mc._alpha = 0;       
        delete mask_all_mc.onRollOver;
        _level0.tabChildren = true ;
}

Вот это
Код AS1/AS2:

_level0.tabChildren = true ;

может и не так должно быть, если у есть какие-то другие алгоритмы табуляции по _level0.
Но принцип такой.

Mnilionic 29.08.2009 21:46

В диалоговом окне было бы неплохо оставить табобход ;)
Ну это если уж совсем всё круто делать.

mooncar 29.08.2009 21:50

Ага. Ну это уже если заготовку использовать начинать... Например, там кроме единственной кнопки, где надпись "Уверены?" еще и кнопку "Нет" нужно :)

Mnilionic 29.08.2009 22:04

Здравствуйте... а смысл спрашивать "удалять или нет?" если там одна кнопка [да] :)). Это уже не подтверждение и приговор.


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

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