Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.08.2010, 21:50
TIЕSTO вне форума Посмотреть профиль Отправить личное сообщение для TIЕSTO Найти все сообщения от TIЕSTO
  № 1  
Ответить с цитированием
TIЕSTO

Регистрация: Aug 2010
Сообщений: 13
По умолчанию Вывод массива

Здравствуйте !!
никак не могу понять как вывести массив на экран ???
помогите !!!
: )

нужно вывести через каждую секунду число из массива 10 чисел.

вот мой неправильно работающий код .
при запуске выдает Get Ready! , а через секунду сразу 10 =(

Код AS3:
package {
   import flash.display.*; 
   import flash.events.*; 
   import flash.utils.*; 
   import flash.text.*; 
 
    public class Race extends Sprite { 
     private var startMsg:TextField; 
       public function Race ( ) { 
       stage.frameRate = 30; 
 
    var timer:Timer = new Timer(1000, 10);  //
      timer.addEventListener(TimerEvent.TIMER, timerListener); 
      timer.start( ); 
 
      startMsg = new TextField( ); 
      startMsg.autoSize = TextFieldAutoSize.LEFT; 
      startMsg.text = "Get Ready!"; 
                addChild(startMsg); 
} 
    private function timerListener (e:TimerEvent):void {
      var numbers:Array = [1,2,3,4,5,6,7,8,9,10];
      if ( startMsg.text !== numbers[9] ){
         for ( var i:int = 0; i !== numbers[9]; i++ ){
       	startMsg.text = numbers[i];}
 
 
 
 
   } 
  } 
 }
}

Старый 14.08.2010, 21:56
t4arty вне форума Посмотреть профиль Отправить личное сообщение для t4arty Найти все сообщения от t4arty
  № 2  
Ответить с цитированием
t4arty

Регистрация: May 2010
Адрес: пространство в положении
Сообщений: 219
эм.. ваш код странный =) я не вьеду в него

Старый 14.08.2010, 22:17
TIЕSTO вне форума Посмотреть профиль Отправить личное сообщение для TIЕSTO Найти все сообщения от TIЕSTO
  № 3  
Ответить с цитированием
TIЕSTO

Регистрация: Aug 2010
Сообщений: 13
чем же он странный ?))

Старый 14.08.2010, 22:29
TWETTI вне форума Посмотреть профиль Отправить личное сообщение для TWETTI Найти все сообщения от TWETTI
  № 4  
Ответить с цитированием
TWETTI
 
Аватар для TWETTI

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Вот так надо. Без цикла.
Код AS3:
package 
{
	import flash.display.Sprite;
	import flash.events.TimerEvent;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.utils.Timer;
 
	public class Main extends Sprite 
	{
		private var count:int = 0;
		private var numbers:Array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
		private var startMsg:TextField;
 
		public function Main():void 
		{
			startMsg = new TextField();
			startMsg.autoSize = TextFieldAutoSize.LEFT;
			startMsg.text = "Get Ready!";
			addChild(startMsg);
 
			var timer:Timer = new Timer(1000, 10);
			timer.addEventListener(TimerEvent.TIMER, onTimer);
			timer.start();
		}
 
		private function onTimer(e:TimerEvent):void 
		{
			startMsg.text = numbers[count];
			count ++;
			if (count == 11)
			{
				e.target.removeEventListener(TimerEvent.TIMER, onTimer);
			}
 
		}
 
	}
 
}
А вообще зачем вам массив? Можно и без него.

Старый 14.08.2010, 22:30
SilverToad вне форума Посмотреть профиль Отправить личное сообщение для SilverToad Найти все сообщения от SilverToad
  № 5  
Ответить с цитированием
SilverToad

Регистрация: Aug 2010
Адрес: Красноярск
Сообщений: 7
По всей видимости требовалось, что то типа этого:
Код AS3:
package
{
import flash.display.Sprite;
import flash.text.TextField;
 
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.text.*;
 
public class Race extends Sprite
{
    private var startMsg:TextField;
 
    public function Race()
    {
        stage.frameRate = 30;
 
        var timer:Timer = new Timer(1000, 10);  //
        timer.addEventListener(TimerEvent.TIMER, timerListener);
        timer.start();
 
        startMsg = new TextField();
        startMsg.autoSize = TextFieldAutoSize.LEFT;
        startMsg.text = "Get Ready!";
        addChild(startMsg);
    }
 
    private var count:uint = 0;
    private function timerListener(e:TimerEvent):void
    {
        var numbers:Array = [1,2,3,4,5,6,7,8,9,10];
        if (count != numbers.length)
        {
            startMsg.text = numbers[count];
            count++;
        }
    }
}
}
Добавлено через 1 минуту
Оу.. Надо чаще страницу обновлять, не разглядел, что уже ответили +))

Старый 14.08.2010, 22:33
gr_crd вне форума Посмотреть профиль Отправить личное сообщение для gr_crd Посетить домашнюю страницу gr_crd Найти все сообщения от gr_crd
  № 6  
Ответить с цитированием
gr_crd
 
Аватар для gr_crd

Регистрация: Mar 2009
Адрес: Kazakhstan, Almaty
Сообщений: 121
Код AS3:
for ( var i:int = 0; i !== numbers[9]; i++ ){
startMsg.text = numbers[i];}
}
вот здесь вы ведь сами указали, чтобы он установил последнее число.

можно просто добавить переменную-счетчик = 0.
каждый раз при срабатывании таймера startMsg.text = numbers[счетчик];
а также счетчик++ и никаких циклов не нужно

UPD
) поздно пишу)
__________________
заткнись и делай

Старый 14.08.2010, 22:47
TIЕSTO вне форума Посмотреть профиль Отправить личное сообщение для TIЕSTO Найти все сообщения от TIЕSTO
  № 7  
Ответить с цитированием
TIЕSTO

Регистрация: Aug 2010
Сообщений: 13
спасибо , помогли ..))

Добавлено через 5 минут
страницу можно и не обновлять и так работает.

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:01.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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