Нарисуйте кнопку размером с клип - PullRequest
0 голосов
/ 03 февраля 2012

Я действительно новичок в ActionScript и Flash / Flex.

Я пытаюсь реализовать загрузчик нескольких файлов и выставить API для javascript. Несмотря на то, что я думаю, что справлюсь с URL-запросами, мне сложно создать SimpleButton.

Я хочу, чтобы кнопка имела размер мувиклипа / спрайта, который я создаю. Я безуспешно пытаюсь сделать клип размером 130 на 30 пикселей и иметь простую кнопку, которая заполняет всю область.

Что я пытаюсь сделать в actionscript:

private var _button:SimpleButton = new SimpleButton();
private var _fileList:FileReferenceList = new FileReferenceList();
private var _buttonShape:Shape;

public function FileUploader() {
   makeSkin();
   makeButton();
   addChild(_button);
}

private function makeSkin():void {
    _buttonShape = new Shape();
    _buttonShape.graphics.beginFill(0x000000,1);
    _buttonShape.graphics.drawRect(0,0,130,30);
    _buttonShape.graphics.endFill();
}

private function makeButton():void {
    _button.upState = _buttonShape;
    _button.downState = _buttonShape;
    _button.overState = _buttonShape;
    _button.hitTestState = _buttonShape;
    _button.addEventListener(MouseEvent.CLICK, clickAction);
}

private function clickAction(e:MouseEvent):void {
    _fileList.browse();
}

HTML:

<object  id="FileUploader" width="130px" height="30px">
   <param name="movie" value="FileUploader.swf" />
   <param name="quality" value="high" />
   <param name="bgcolor" value="#FFFFFF" />
   <param name="allowScriptAccess" value="sameDomain" />
   <param name="allowFullScreen" value="true" />

   <object type="application/x-shockwave-flash" data="FileUploader.swf" width="130px" height="30px" >
        <param name="quality" value="high" />
        <param name="bgcolor" value="#FFFFFF" />
        <param name="allowScriptAccess" value="sameDomain" />
        <param name="allowFullScreen" value="true" />
   </object>
</object>

Я использую intelij для компиляции. Я понятия не имею, как построить это с одним SDK. Любой учебник или подсказка была бы благодарна. Спасибо!

Ответы [ 2 ]

1 голос
/ 04 февраля 2012

Вы можете загрузить либо FlashDevelop, либо FDT Free в качестве IDE + компилятора. Я предпочитаю FlashDevelop, поскольку все довольно просто, чтобы все заработало и работало. Тем не менее, и FDT, и FlashDevelop имеют шаблоны для запуска.

0 голосов
/ 04 февраля 2012

Я нашел ответ после прочтения немного больше.Масштаб и выравнивание сцены были проблемой.

public class FileUploader extends Sprite {

private var _fileList:FileReferenceList = new FileReferenceList();
private var _buttonShape:Sprite = new Sprite();


public function FileUploader() {
    stage.scaleMode = StageScaleMode.NO_SCALE;
    stage.align = StageAlign.TOP_LEFT;
    createButton();
    addChild(_buttonShape);
}

private function createButton():void {
    _buttonShape.x = 0;
    _buttonShape.y = 0;
    _buttonShape.graphics.beginFill(0x000000,1);
    _buttonShape.graphics.drawRect(0,0,1000,1000);
    _buttonShape.graphics.endFill();
    _buttonShape.buttonMode = true;
    _buttonShape.addEventListener(MouseEvent.CLICK, clickAction);
}

private function clickAction(e:MouseEvent):void {
    _fileList.browse();
}

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