PDA

Просмотр полной версии : Можно ли обратиться к классу, который находится не в той же папки, что и приложение?


Dip52
06.10.2013, 15:46
Здравствуйте.

Как можно обратиться к классу Settings из приложения, если класс Settings находится выше по иерархии?

Класс Settings находится в папке madness.
Приложение находится в папке library.
Все эти папки находятся в папке galacticmadness.

30072

Akopalipsis
06.10.2013, 16:09
Подняться на шаг выше - ../
Для примера, вот путь к файлу, который находится выше в иерархии -
"../../../../bin/button-out.png"

Добавлено через 2 минуты
Можно ещё указывать путь относительно какой то папки - если самый верхний уровень galacticmadness , то от него и идти -
import galacticmadness.classes.Settings;

Dip52
06.10.2013, 17:08
Подняться на шаг выше - ../


А можно это в случае с импортом применить? import '../../'?


Можно ещё указывать путь относительно какой то папки - если самый верхний уровень galacticmadness , то от него и идти -
import galacticmadness.classes.Settings;

Я так делал, но всё равно пишет: Не удалось найти определение galacticmadness.madness:Settings.

Wolsh
06.10.2013, 17:29
Надо компилятору указывать Путь к хранилищу Классов. Это не в коде делается.
ФД
30075

Dip52
06.10.2013, 18:01
Понял, понял. Значит нужно переходить на FD. Спасибо всем.

Wolsh
06.10.2013, 19:21
Из чего такой вывод? У меня просто нет Adobe Flash под рукой, чтобы сделать скриншот. Но там тоже есть установка дополнительных глобальных путей к классам, кажется, в свойствах AS3.

Akopalipsis
06.10.2013, 21:15
Вот так во флеше.

Dip52
07.10.2013, 21:38
Вот так во флеше.

А если я укажу через "ПУТЬ К ИСТОЧНИКУ", а не через тот пункт, который вы показываете?

Я вот подключил, сделал то, что намеревался, но теперь столкнулся с другой проблемой: я это приложение подключаю в качестве библиотеке к другому приложению, который находится в папке galacticmadness.
В этой библиотеке я привязываю объект MovieClip к классу, который находится в папке characters (а она в папке madness). Когда я в библиотеке делаю экземпляр класса (который привязываю к объекту MovieClip) и добавляю его на сцену, то я вижу, что объект MovieClip действительно привязан к тому классу.
Но вот если я делаю экземпляр того же класса из главного приложения (куда подключаю библиотеку), то уже объекта MovieClip нету. Получается, что класс связывается с объектом MovieClip только в библиотеке?

Akopalipsis
07.10.2013, 21:49
Если честно я не знаю.
я это приложение подключаю в качестве библиотеке к другому приложению
Вообще если Вы подключаете swf или swc, то не чего не должно быть не правильно, так как и то и другое является - уже конечным обьектом. То есть все классы уже в нем. Возможно Вы в скомпилированном приложении использовали только часть класса который пытаетесь создать в основном приложении. То есть пусть Вы его и подсоединили, но не факт, что компилятор его вставил.