|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
||||||
AS 3.0 Формируемое имя переменной (экземпляра)05.04.2013, 21:57. Показов 2588. Ответов 15
Метки нет (Все метки)
Здоров мужики. Подскажите, как указывать имя переменной которая формируется в процессе ?
к примеру мне нужно создать 100 экземпляров класса, но не вручную писать код. К примеру:
Читал что, используют массивы в данном случае, но не понял как(массивы в as какие не такие, пока в них не разобрался) Можно или обойтись без них, а если нет, как это реализовать. Заранее спасибо.
0
|
||||||
| 05.04.2013, 21:57 | |
|
Ответы с готовыми решениями:
15
Создание экземпляра класса, имя класса находиться в строковой переменной Создание переменной, имя которой включает имя другой переменной автоматическое имя экземпляра класса |
|
9 / 9 / 1
Регистрация: 22.03.2013
Сообщений: 65
|
||||||
| 05.04.2013, 22:12 | ||||||
1
|
||||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
||||||||||||
| 05.04.2013, 22:33 [ТС] | ||||||||||||
|
Как мне теперь к свойству или методу обращаться ? У меня есть класс light, у него метод draw как мне теперь вызвать его для всех экземпляров ?
Добавлено через 8 минут Я возможно не так выразился. Нужно создать n-e количество экземпляров класса light с разными именами.
0
|
||||||||||||
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
|
| 05.04.2013, 22:34 | |
|
kaliban, используйте типизированный массив (Vector). И пройтись по всем элементам цикла аналогично созданию/помещению объектов в массив.
1
|
|
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
|
| 05.04.2013, 22:38 [ТС] | |
|
Я не бум-бум что такое "типизированный массив (Vector)" =)
Нельзя в цикле создать, формируя имя name+i(индекс цикла) ? Я где то видел что делали так, только не помню как оформить name+i, вроде в кавычках, но это не срабатывает.
0
|
|
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
||||||
| 05.04.2013, 22:42 | ||||||
|
kaliban, если нужно обращаться по имени - используйте объект (Object) или Dictionary
Вот пример. Только, думаю, целесообразно делать это в массиве.
2
|
||||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
||||||
| 05.04.2013, 23:00 [ТС] | ||||||
Если вам не трудно, подправьте код. Как мне вызвать метод update (); для всех экземпляров ? Попробую объяснить что мне нужно сделать. Класс рисует молнию. метоп апдейт ее апдейтит =) Мне нужно создать N молний на сцене.
0
|
||||||
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
||||||
| 05.04.2013, 23:08 | ||||||
1
|
||||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
|||||||
| 05.04.2013, 23:51 [ТС] | |||||||
|
Спасибо, что так помогаете мне, но это совсем не то, что нужно. Update нужно вызывать каждый кадр( зачем по клику ? )
И как теперь обратиться к свойству ? У класса есть методы StartX и EndX как их теперь задавать для каждого экземпляра ? Вот подправил, выглядит вроде как надо(код), но дает ошибку
0
|
|||||||
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
||||
| 06.04.2013, 00:11 | ||||
|
0
|
||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
||
| 06.04.2013, 02:29 [ТС] | ||
|
По событию ENTER_FRAME что бы молния обновлялась.
Они есть как свойства, им же определить нужно.Для каждого экземпляра свои StartX и EndX, так же как и EndX и EndY. Точки, из которых будет исходить молния, и где она будет заканчиваться. Вот кстати библиотека которую использую. Красивый эффект. http://blog.oaxoa.com/2009/07/... rge-class/ trace вообще не выводится. Только ошибка.
0
|
||
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
|||
| 06.04.2013, 13:39 | |||
|
0
|
|||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
||||||
| 06.04.2013, 15:23 [ТС] | ||||||
|
Причем тут трейсы ? Что не там установлен ? Трейс ?
Как где содержимое ? Я же указал в импорте ( import com.oaxoa.fx.Lightning; import com.oaxoa.fx.LightningFadeType ![]() Создаю экземпляр :
0
|
||||||
|
Модератор
2936 / 1795 / 180
Регистрация: 19.02.2011
Сообщений: 6,552
|
||||||
| 06.04.2013, 15:39 | ||||||
|
kaliban, разве вы не о том, как их (координаты) передать спрашивали? Наверное недопоняли друг друга.
1
|
||||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
|||||||||||
| 08.04.2013, 06:34 [ТС] | |||||||||||
|
Спасибо, выглядит вроде как нужно. Но не работает опять же.
Я не силен в синтаксисе as3, но после слова Vector вроде точка нужна. Как бы там ни было, я попробовал и так и так, и с данным ниже кодом выдает ошибку: Монтажный кадр 1, слой "Слой 1", кадр 1, строка 11 1119: Обращение возможного неопределенного свойства StartX через ссылку со статическим типом com.oaxoa.fx:Lightning .
Погуглил, моя ошибка. Не правильно метод писал. С маленькой буквы нужно было =) Теперь ошибок не выдает. Но все так же не работает )) Добавлено через 7 минут Тупанул ... =) Не добавлял на сцену просто. Вот рабочий код:
1
|
|||||||||||
|
3 / 3 / 0
Регистрация: 13.04.2012
Сообщений: 47
|
|
| 08.04.2013, 06:38 [ТС] | |
|
Вот результат.
0
|
|
| 08.04.2013, 06:38 | |
|
Помогаю со студенческими работами здесь
16
Как узнать имя экземпляра объекта? Как узнать имя экземпляра класса? Имя экземпляра объекта внутри класса на С++
Как обращаться к переменной экземпляра? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|