Начало работы с Flex 3 UI Программирование на ActionScript - PullRequest
1 голос
/ 17 февраля 2009

Есть ли хорошие ресурсы для запуска программирования Flex 3 UI в ActionScript? У меня есть некоторые проблемы со следующим, если у кого-то есть какие-либо идеи. Он получает правильный размер, но мои кнопки не отображаются. У кого-нибудь есть идеи?

package 
{
    import flash.display.*;

    import mx.controls.Button;
    import mx.controls.TileList;
    import mx.controls.sliderClasses.Slider;
    import mx.controls.ProgressBar;

    import flash.net.FileReferenceList;

    [SWF(width="720", height="480", backgroundColor="#ffffff", framerate="30")]

    public class PhotoUploader extends Sprite
    {
        var AddPhotosButton:Button;
        var RemovePhotoButton:Button;
        var UploadPhotosButton:Button;

        public function PhotoUploader():void
        {
            stage.scaleMode = StageScaleMode.NO_SCALE;
            stage.align = StageAlign.TOP_LEFT;

            AddPhotosButton = new Button();
            AddPhotosButton.x = 10;
            AddPhotosButton.y = 10;
            AddPhotosButton.width = 100;
            AddPhotosButton.height = 20;

            RemovePhotoButton = new Button();
            UploadPhotosButton = new Button();

            addChild(AddPhotosButton);
            addChild(RemovePhotoButton);
            addChild(UploadPhotosButton);
        }
    }
}

Ответы [ 3 ]

1 голос
/ 17 февраля 2009

Для настоящего приложения Flex, я думаю, вам нужно начать с верхнего уровня mx.core.Application (часто определяемого в MXML, а не в ActionScript), к которому вы бы добавили mx.core.UIComponent s. Я думаю, что ваш PhotoUploader будет хорошим примером пользовательского UIComponent.

Страницы справки / руководства по Flex довольно хороши. Я бы рекомендовал начать там. Пользовательские компоненты описаны в явном виде, но вы можете начать раньше в потоке.

0 голосов
/ 17 февраля 2009

Попробуйте переопределить метод createChildren() вашего компонента (не забудьте вызвать super.createChildren() внутри него) и перенести три вызова на addChild(). Не вызывайте свой собственный метод createChildren; фреймворк Flex обеспечит его вызов при добавлении компонента в список отображения.

Написание компонента в MXML избавляет вас от необходимости много знать о жизненном цикле компонента Flex , потому что mxmlc сгенерирует подходящий исходный код AS3 для вас, но когда вы захотите написать свой собственный компонент AS3 самостоятельно, вам действительно нужно ознакомиться с ним.

0 голосов
/ 17 февраля 2009

Проверьте страницу liveocs, касающуюся проектов ActionScript . А именно:

О проектах ActionScript

Flex Builder позволяет создавать проекты ActionScript, в которых используется Flash API (не платформа Flex) . Это позволяет использовать инструменты рабочей среды Flex Builder и редактор ActionScript, что означает, что у вас есть полнофункциональная IDE для разработки приложений ActionScript.

Таким образом, вы не можете использовать компоненты Flex в проекте ActionScript. Я удивлен, что вам даже удалось составить этот класс. Если вы используете другой метод, укажите его в вопросе.

Если вы используете Flex 3 и addChild, я предполагаю, что вы используете ActionScript 3. В этом случае ваши операторы импорта указывают на неправильные пакеты. Button, TileList, Slider и ProgressBar находятся в fl.controls package.

Кроме того, в руководствах ActionScript рекомендуются имена свойств и методы, начинающиеся со строчной буквы.

О, последнее. Я не рекомендую импортировать весь пакет отображения, потому что там действительно целая куча классов.

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