Страница 33 из 56

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

Добавлено: 01 апр 2011, 17:56
Cadmy
нет подкласс не добавлен на сцену. в этом и состоит вопрос, чтобы объектами на сцене можно было управлять из двух классов

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

Добавлено: 01 апр 2011, 18:02
bodnar
знач "подкласс" выбрасывает события
"класс" их слушает и управляет
либо чтобы класс через статический метод возвращал экземпляр того объекта которым надо управлять

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

Добавлено: 04 апр 2011, 22:44
FireStorm3000
Как отключить прокрутку колесом мыши в TextArea на AS3?
ну или чтоб над этим объектом мышь события мыши вообще не срабатывали

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

Добавлено: 05 апр 2011, 08:34
FireStorm3000
отвечаю)
на событие scroll
вешаю функцию

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

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

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

ScrlR1=ReadList1.verticalScrollPosition;
вычисленное заранее
Мож кому пригодится

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

Добавлено: 07 апр 2011, 16:18
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 - координатой правой. Возможно ли найти координаты левой и верхней частей окна, если да, то как?

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

Добавлено: 11 апр 2011, 21:20
Nick Lisogor
Недавно решил проблему. Если кого-то интересует: проблема была в StageAlign(выравнивании сцены).

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

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

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

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

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

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

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

var nameFunc:String = "showMovie"
Как мне получить ссылку на эту функцию?

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

Добавлено: 12 апр 2011, 22:27
catamount5
Решила вопрос с помощью [ ]

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

Добавлено: 24 апр 2011, 22:20
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();}
Я хочу сделать что бы на игровом поле появлялись рэндомно кружки (мишени). Когда по ним кликаешь они они исчезают и появляются сново.

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

Добавлено: 24 апр 2011, 23:07
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);        }    }}