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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.05.2007, 17:55
slava444 вне форума Посмотреть профиль Отправить личное сообщение для slava444 Найти все сообщения от slava444
  № 1  
Ответить с цитированием
slava444

Регистрация: May 2006
Сообщений: 16
Question Таблица с помощью цикла

Можно ли в следующем коде динамически изменять имя текстового поля, например text_txt, text1_txt, чтобы загнать его в цикл?

Код:
_root.createTextField("text_txt",0,0,0,200,50);
чтобы цикл выглядел примерно следующим образом:

Код:
var i:Number;
var j:Number;
i=0;
j=0;
while (i<4){
	i++;
	_root.createTextField("text_txt",0,0,0,200,50);
        text_txt.type="input";
        text_txt._x=0+j;
        j=200+text_txt._x;
}

Старый 21.05.2007, 18:03
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Код:
var i:Number;
var j:Number;
i=0;
j=0;
while (i<4){
	i++;
	var txt = _root.createTextField("text_txt"+i,0,0,0,200,50);
        txt.type="input";
        txt._x=0+j;
        j=200+txt._x;
}

Старый 21.05.2007, 18:30
slava444 вне форума Посмотреть профиль Отправить личное сообщение для slava444 Найти все сообщения от slava444
  № 3  
Ответить с цитированием
slava444

Регистрация: May 2006
Сообщений: 16
Спасибо. Но у меня работает только если немного изменть один параметр (0 заменить на i);

Код:
var i:Number;
var j:Number;
i=0;
j=0;
while (i<4){
	i++;
	var txt = _root.createTextField("text_txt"+i,i,0,0,200,50);
        txt.border = true;
        txt.type="input";
        txt._x=0+j;
        j=200+txt._x;
}
Нельзя ли на основании такого метода сделать таблицу, например 4 на 7?

Старый 21.05.2007, 18:36
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Можно. Поможет оператор «%».

Старый 21.05.2007, 19:07
slava444 вне форума Посмотреть профиль Отправить личное сообщение для slava444 Найти все сообщения от slava444
  № 5  
Ответить с цитированием
slava444

Регистрация: May 2006
Сообщений: 16
Как может помочь оператор "%" не догнал Пришлось сделать по-другому. Главное, что всё работает как надо.

Код:
var i:Number;
var j:Number;
var n:Number;
var m:Number;
var k:Number;
i=0;
n=0;
k=0;
while (i<4){
	i++;
	j=0;
	m=0;
	while (j<7){
	j++;
	n++;
	var txt = _root.createTextField("text_txt"+n,n,k,0,200,50);
        txt.border = true;
		txt.type="input";
        txt._y=0+m;
        m=50+txt._y;		
	}
	k=k+200;
}
}

Старый 21.05.2007, 19:22
slava444 вне форума Посмотреть профиль Отправить личное сообщение для slava444 Найти все сообщения от slava444
  № 6  
Ответить с цитированием
slava444

Регистрация: May 2006
Сообщений: 16
Проблема: не могу обратиться к текстовому полю по имени. Если после цикла попытаться прописать следующий код, то первая ячейка всё равно остаётся пустой

Код:
text_txt1.text="просто текст";

Старый 21.05.2007, 19:34
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Код:
var i:Number;
var j:Number;
var n:Number;
var m:Number;
var k:Number;
i = 0;
n = 0;
k = 0;
while (i < 4) {
	i++;
	j = 0;
	m = 0;
	while (j < 7) {
		j++;
		n++;
		var txt = _root.createTextField("text_txt" + n, n, k, 0, 200, 50);
		txt.border = true;
		txt.type = "input";
		txt._y = 0 + m;
		m = 50 + txt._y;
	}
	k = k + 200;
}
text_txt1.text="просто текст";
Работает.

Старый 21.05.2007, 19:39
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 8  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Цитата:
Сообщение от slava444
Как может помочь оператор "%" не догнал
Код:
for(var i = 0; i < 20; i++){
 trace( i % 5);	
}

Старый 21.05.2007, 19:53
slava444 вне форума Посмотреть профиль Отправить личное сообщение для slava444 Найти все сообщения от slava444
  № 9  
Ответить с цитированием
slava444

Регистрация: May 2006
Сообщений: 16
Пасиба, всё работает. Последний вопрос: как задать в цикле формат текста таблицы (цвет, шрифт и т.д.)?

Старый 21.05.2007, 19:58
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 10  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
setTextFormat/setNewTextFormat у TextField.

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

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

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


 


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


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