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

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

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

Регистрация: Mar 2012
Сообщений: 58
По умолчанию Обращение к текстовому полю

Доброго времени суток. Только начинаю работать с классами, так что если вдруг дурак, покажите в чем) Пытался сделать некоторую кнопку с текстом внутри (element-класс кнопки, elementName созданное внутри текстовое поле). Получилось такое:
Код AS3:
package  {
 
	import flash.display.MovieClip;
	import flash.display.DisplayObject;
 
 
	public class Main extends MovieClip {
		public function addElement (elemName:String)
		{
		var element:Element = new Element ();
		WorkList.addChild (element).name=elemName;
		trace (element.elementName="jkk");
		}
	}
}
Эта штука выводит ошибку, что типа я привожу элемент TextField к String, когда я пишу trace (element.elementName.text="jkk") выводит, что я обращаюсь к свойству объекта null, а когда trace (element.elementName) выводит null (что как бы быть не может ибо он понимает, что elementName-TextField)

Вопрос впринципе в том, как мне изменить текст elementName'а.
Заранее спасибо.


Последний раз редактировалось XimiKDeniS; 29.09.2012 в 21:15.
Старый 29.09.2012, 20:41
TWETTI вне форума Посмотреть профиль Отправить личное сообщение для TWETTI Найти все сообщения от TWETTI
  № 2  
Ответить с цитированием
TWETTI
 
Аватар для TWETTI

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Метод addChild в вашем примере возвращает экземпляр класса Element. Вы пытаетесь присвоить свойству name значение elemName. Свойство name - символьная переменная, а elemName это текстовое поле класса TextField. Поэтому и получается, что вы приводите TextField к String.

Чтобы изменить текст elementName'а надо написать следующее:
Код AS3:
var element:Element = new Element();
element.elemName.text = "Ваш текст";
addChild(element)

Старый 29.09.2012, 21:07
XimiKDeniS вне форума Посмотреть профиль Отправить личное сообщение для XimiKDeniS Найти все сообщения от XimiKDeniS
  № 3  
Ответить с цитированием
XimiKDeniS

Регистрация: Mar 2012
Сообщений: 58
т е просто так после addChild (element) изменить текст txtField'а нельзя?

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

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Можно.
Код AS3:
(WorkList.addChild(element) as Element).elementName.text = "Ваш текст";
Теперь работает?


Последний раз редактировалось TWETTI; 29.09.2012 в 21:14. Причина: Исправил elemName на elementName.
Старый 29.09.2012, 21:10
XimiKDeniS вне форума Посмотреть профиль Отправить личное сообщение для XimiKDeniS Найти все сообщения от XimiKDeniS
  № 5  
Ответить с цитированием
XimiKDeniS

Регистрация: Mar 2012
Сообщений: 58
Нет, пишет:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект null.
at Main/addElement()

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

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Загрузите исходник. Так я быстрее вам помогу.

Старый 29.09.2012, 21:19
XimiKDeniS вне форума Посмотреть профиль Отправить личное сообщение для XimiKDeniS Найти все сообщения от XimiKDeniS
  № 7  
Ответить с цитированием
XimiKDeniS

Регистрация: Mar 2012
Сообщений: 58
описанное находится в классе ChooseList
Вложения
Тип файла: rar gui.rar (360.8 Кб, 33 просмотров)

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

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Сохраните под Flash CS5.5.

Старый 29.09.2012, 21:28
XimiKDeniS вне форума Посмотреть профиль Отправить личное сообщение для XimiKDeniS Найти все сообщения от XimiKDeniS
  № 9  
Ответить с цитированием
XimiKDeniS

Регистрация: Mar 2012
Сообщений: 58
Поменял
Вложения
Тип файла: rar gui.rar (361.0 Кб, 36 просмотров)

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

Регистрация: Dec 2007
Адрес: Россия, Москва
Сообщений: 541
Отправить сообщение для TWETTI с помощью Skype™
Не запускается в Flash CS5.5. ошибки:
Код:
VerifyError: Error #1079: В загруженных кодах собственные методы не разрешены .
ReferenceError: Error #1065: Переменная Main__Preloader__ не определена.
ReferenceError: Error #1065: Переменная Main__LoadingAnimation__ не определена.

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

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

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


 


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


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