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

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

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

Регистрация: Dec 2010
Сообщений: 129
Question Класс для текстого поля не передает значения.

Доброе...
Скажите пожалуйста, как поправить класс, чтобы после его применения, смог взять значения текстового поля?)

Код класса:
Код AS3:
package  {
		import flash.display.Sprite;
   		import flash.events.MouseEvent;
  		import flash.text.TextField;
  		import flash.text.TextFormat;
		import flash.text.*;
	public class box_text extends Sprite{
 
		private var box_label:TextField;
 
		public function box_text() {
			box_label = new TextField();
			box_label.type = TextFieldType.INPUT;
			box_label.multiline=false;
			box_label.maxChars=25;
			box_label.width=300;
			box_label.height=30;
    		box_label.y = 15;
			var myFont:Font = new Font1();
    	var format:TextFormat = new TextFormat();
    	format.align = "left";
    	format.font = myFont.fontName;
    	format.size = 22;
    	box_label.defaultTextFormat = format;
    	addChild(box_label);
	}
 
	 public function setText(label:String, x1,y1:int):void {
            box_label.text = label;
			box_label.x=x1;  //Координаты строки
			box_label.y=y1;
        }
 
	}
 
}

Вот код применения класса:
Код AS3:
//Кнопка, нажатием на которую хочу получить текст TextFieldá
 
btn_next_reg.addEventListener(MouseEvent.CLICK, regComplite)
 
function regComplite(event:MouseEvent):void{
	trace(box1.text); //Выдает 
}
 
var box1 = new box_text();
box1.setText("",330,75);
form_menu_reg.addChild(box1);
Тестовое поле появляется, текст ввожу. а вот применить не могу)
Получаю такое сообщение:
Код:
ReferenceError: Error #1069: Не удалось найти свойство text в box_text; отсутствует значение по умолчанию.
	at Function/<anonymous>()
Подскажите пожалуйста, как получить значение текста?
Или может по другому надо Класс переписать?
Спасибо.
__________________
--
Какой бы путь ты не выбрал, лягушка прыгнет врятли

Старый 21.05.2014, 14:31
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 2  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Код AS3:
// добавить в класс
public function getText():String {
            return box_label.text;
        }
// применение
function regComplite(event:MouseEvent):void{
	trace(box1.getText()); 
}

Старый 21.05.2014, 14:41
firefedot вне форума Посмотреть профиль Отправить личное сообщение для firefedot Найти все сообщения от firefedot
  № 3  
Ответить с цитированием
firefedot
 
Аватар для firefedot

Регистрация: Dec 2010
Сообщений: 129
Спасибо огромное...
Помогло.
__________________
--
Какой бы путь ты не выбрал, лягушка прыгнет врятли

Старый 21.05.2014, 15:27
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 4  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
alexcon314 -
Код AS3:
public function get text():String {
            return box_label.text;
        }
И выглядит приятнее и понятно, что это геттер. А в твоем случае метод, а метод не требующий параметров и возвращающий что то - всегда делается геттером, а не методом. Ай айай йай
__________________
Марк Tween

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
in4core, а как же getTextFormat у TextField, и прочие стандартные примеры?
Ай, забыл, что getTextFormat всё же принимает параметры...
Но всё равно, даже в книге Мука написано, что это дело каждого.
Да и у геттеров и сеттеров есть там какие-то ограничения.
__________________
There is no thing in this world that is not simple.

Старый 21.05.2014, 15:32
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 6  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
in4core, а как же getTextFormat у TextField, и прочие стандартные примеры?
К тому же, это дело каждого.
Да вот нифига это не дело каждого , это читаемая концепция, в отличие от предидущей. getTextFormat еще с времен AS1 мигрировал.
Короче че тут спорить, пишите как хотите - я буду писать понятно, а главное понятно для себя.
__________________
Марк Tween

Старый 21.05.2014, 15:53
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 7  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Цитата:
метод не требующий параметров и возвращающий что то - всегда делается геттером
ай-я-яй.
Не повернул рубильник "AS3 mode" в положение "ON'", каюсь . Потом, у автора уже есть setText(). Я за единообразие.

Старый 21.05.2014, 17:37
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 8  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
Не повернул рубильник "AS3 mode" в положение "ON'", каюсь
Ну здрасте - в яве такой же асмод )
__________________
Марк Tween

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

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Цитата:
в яве
Но alexcon314 ведь проповедует С++ Он вроде говорил, что яву недолюбливает)
__________________
There is no thing in this world that is not simple.

Старый 21.05.2014, 19:56
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
Но alexcon314 ведь проповедует С++
Как в анекдоте - я за 2 недели выучил C++
__________________
Марк Tween

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

Теги
AS3 , textfield
Опции темы
Опции просмотра

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

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


 


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


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