ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.
Аватара пользователя
Cadmy
Сообщения: 35
Зарегистрирован: 29 авг 2010, 21:12

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение Cadmy »

нет подкласс не добавлен на сцену. в этом и состоит вопрос, чтобы объектами на сцене можно было управлять из двух классов
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение bodnar »

знач "подкласс" выбрасывает события
"класс" их слушает и управляет
либо чтобы класс через статический метод возвращал экземпляр того объекта которым надо управлять
Аватара пользователя
FireStorm3000
Сообщения: 80
Зарегистрирован: 03 янв 2010, 18:17

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение FireStorm3000 »

Как отключить прокрутку колесом мыши в TextArea на AS3?
ну или чтоб над этим объектом мышь события мыши вообще не срабатывали
Аватара пользователя
FireStorm3000
Сообщения: 80
Зарегистрирован: 03 янв 2010, 18:17

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение FireStorm3000 »

отвечаю)
на событие scroll
вешаю функцию

Код: Выделить всё

 function ScrollStop1():void    {       ReadList1.verticalScrollPosition=ScrlR1;    } 
а

Код: Выделить всё

ScrlR1=ReadList1.verticalScrollPosition;
вычисленное заранее
Мож кому пригодится
Nick Lisogor
FL Team
FL Team
Сообщения: 119
Зарегистрирован: 12 дек 2010, 14:08

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение Nick Lisogor »

Мне нужно нарисовать квадрат, который "обрамляет" сцену и при изменении размеров окна также изменяет свои размеры. Делаю я это так:

Код: Выделить всё

import flash.events.Event; drawStageRect();stage.addEventListener(Event.RESIZE, onStageResize); function onStageResize( event:Event ):void{    drawStageRect();} function drawStageRect():void{    this.graphics.clear();    this.graphics.lineStyle( 2, 0x0000FF, 1.0 );    this.graphics.drawRect( 0, 0, stage.stageWidth, stage.stageHeight );}
Но код работает не корректно, так, как не всегда x = 0 является координатой левой части окна также, как и y = 0 - координатой правой. Возможно ли найти координаты левой и верхней частей окна, если да, то как?
Nick Lisogor
FL Team
FL Team
Сообщения: 119
Зарегистрирован: 12 дек 2010, 14:08

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение Nick Lisogor »

Недавно решил проблему. Если кого-то интересует: проблема была в StageAlign(выравнивании сцены).
catamount5
Сообщения: 63
Зарегистрирован: 10 авг 2010, 13:37

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение catamount5 »

Добрый день!
Во флеш есть функция getDefinitionByName ().
Т.е. если есть класс MainButtons и в стринговой переменной хранится это имя:

Код: Выделить всё

var nameClass:String = "MainButtons"
То вот так возвращается ссылка на класс:

Код: Выделить всё

trace (getDefinitionByName ("MainButtons")) / пишет [class MainButtons]
Меня интересует, есть ли функция, которая также возвращает по имени ссылку на функцию?
Т.е. у меня есть функция showMovie () и в переменной хранится ее имя:

Код: Выделить всё

var nameFunc:String = "showMovie"
Как мне получить ссылку на эту функцию?
catamount5
Сообщения: 63
Зарегистрирован: 10 авг 2010, 13:37

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение catamount5 »

Решила вопрос с помощью [ ]
Juuunk
Сообщения: 9
Зарегистрирован: 24 апр 2011, 22:14

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение Juuunk »

Помогите новичку)
Не получается написать код, что бы при щелчке мыши на нужном объекте он удалялся.
Как это можно реализовать?

Код:

Код: Выделить всё

import flash.events.MouseEvent;import flash.media.Sound;import flash.display.MovieClip;  stop();  var shot:Sound = new snd_glock;var target = new mc_tar();   stage.addEventListener (MouseEvent.MOUSE_MOVE, movePricel); function movePricel (e:MouseEvent):void {   Mouse.hide();   pricel.x = mouseX   pricel.y = mouseY   e.updateAfterEvent();    if (target.addEventListener(MouseEvent.CLICK, DeleteTarget)) {      addTarget();   } }  function DeleteTarget(e:MouseEvent):void{   stage.removeChild(stage.getChildByName(e.target.name));}  addTarget();function addTarget ():void {   addChild(target);   target.x = Math.random()*644;   target.y = Math.random()*691;}    addEventListener (MouseEvent.MOUSE_DOWN, snd_shot); function snd_shot (e:MouseEvent):void {   shot.play();}
Я хочу сделать что бы на игровом поле появлялись рэндомно кружки (мишени). Когда по ним кликаешь они они исчезают и появляются сново.
protagonist113
Сообщения: 36
Зарегистрирован: 24 апр 2011, 22:43

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ

Сообщение protagonist113 »

Juuunk, пиши в классах лучше
примерно так будет

Код: Выделить всё

 package{    import flash.display.*;    import flash.events.*;    public class Main extends MovieClip {        var target:Target=new Target();        public function Main():void {            newTarget();        }        public function newTarget(){            target=new Target();            target.x=800*Math.random();            target.y=600*Math.random();            target.addEventListener(MouseEvent.CLICK,function (e:MouseEvent):void{                                                                                removeChild(getChildByName(e.target.name));                                                                                newTarget();                                                                            });            addChild(target);        }    }} 
Ответить