Форум 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)
-   -   Есть ли диалоговое окно confirm во Flash? (http://www.flasher.ru/forum/showthread.php?t=122832)

kpagroup 19.03.2009 02:09

Есть ли диалоговое окно confirm во Flash?
 
Доброго времени суток.
Скажите пожалуйста, есть ли во Flash аналог диалогового окна confirm, как в JavaScript. Если нет - как это можно обойти наиболее простым способом.
Заранее благодарен.

alex_blackout 19.03.2009 02:13

Интересный вопрос... т.к. alert(string); похоже не работает (ни в 8й ни в 9й версии)..
Тоже неплохо бы услышать мнение знающих людей по этому поводу

Fatality 19.03.2009 03:00

AS - не JavaScript, хотя они и созданы по одному и тому же стандарту ECMAScript.
Ближайшим аналогом alert() и confirm() в AS, является компонент Alert.
Код AS1/AS2:

import mx.controls.Alert;
Alert.show("сообщение", "окно", Alert.OK | Alert.CANCEL, null, Handler);
function Handler(event:Object)
{
        if(event.detail == Alert.OK) trace("вы нажали ОК");
        if(event.detail == Alert.CANCEL) trace("вы нажали CANCEL");
}

Для того чтобы код работал, в билиотеке должен быть компонент Alert.

kpagroup 19.03.2009 03:12

Спасибо большое Fatality за помощь, буду теперь знать. Пока ждал ответ, нашел выход с положения следующим образом. Создал клип с двумя кнопками и с динамическим полем + написал для него класс:
Код AS1/AS2:

class Confirm
{
        public static var CnfObj:MovieClip;
 
        public static function is(txt,fun1,fun2)
        {
                if (Confirm.CnfObj)
                {
                        Confirm.CnfObj._visible = true;
                }
                else
                {
                        Confirm.CnfObj = _root.attachMovie("WConfirm", "CConfirm", _root.getNextHighestDepth(), { _x:351 + Global.left, _y:351 + Global.top } );
                }
                Confirm.CnfObj.PTxt.text = txt;
                Confirm.CnfObj.BYes.onPress = function()
                {
                        Confirm.CnfObj._visible = false;
                        fun1();
                };
                Confirm.CnfObj.BNo.onPress = function()
                {
                        Confirm.CnfObj._visible = false;
                        fun2();
                };
        }
}

Конечно не сильно красиво, но зато работает :).


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

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