На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: PIL
  
> package и директории.
    Adobe Flash CS 5.5
    ActionScript 3.0

    Первый раз кодю на ActionScript, зато целый день и с раннего утра. Усиленной гуглификацией удалось получить .SWF, которая умеет данные с микрофона отправлять POST-запросом на сервант. Хочется заставить работать такое понятие, как package.

    Есть файл "C:/tmp/HTools/HTools.as", в котором написано:
    ExpandedWrap disabled
      package HTools
      {
         class Zzz
         {
            /// something.
         }
      }


    Что предпринять в конфигурации .FLA - файла, чтобы в его ActionScript 3.0 можно было писать:
    ExpandedWrap disabled
      import HTools;


    Строку "C:\tmp" добавлял в
    1. Edit->Preferences->ActionScript->ActionScript 3.0->Source path
    2. File->Publish settings->ActionScript settings->Source path

    Не помогло. Дайте пожалуйста рекомендаций простых, как всё должно быть :)
    Спасибо!
      Не помню как во Flash IDE, но общий принцип упрощенно следующий. Вы назначаете точку входа для кода, некий класс (например Main), наследующий Sprite (package {}). Всё пляшет вокруг той папки, в которой находится файл этого класса. Т.е. если вы в той же папке определяете класс SomeOtherClass (package {}), то из Main можете делать сразу import SomeOtherClass (кстати можете и не делать, в Main его и так будет видно). Если вы определяете класс SomeElseClass (package nestedfolder1.nestedfolder2 {}) и помещаете его в путь nestedfolder1\nestedfolder2\SomeElseClass.as (относительно файла Main.as), то и из Main, и из SomeOtherClass вы будете обращаться к нему уже так: import nestedfolder1.nestedfolder2.SomeElseClass.

      Ну и для закрепления темы сделаем класс Class3 (package nested3 {}) в папке nested3. Тогда из Main и из SomeOtherClass будете обращаться к нему: import nested3.Class3, и из SomeElseClass - import nested3.Class3. А из Class3: import Main; import SomeOtherClass; import nestedfolder1.nestedfolder2.SomeElseClass

      Общая файловая структура для данного набора:
      ExpandedWrap disabled
        nestedfolder1
         |-nestedfolder2
            |-SomeElseClass.as
        nested3
         |-Class3.as
        Main.as (точка входа)
        SomeOtherClass.as


      Надеюсь поможет
        Оказалось, надо было просто назвать сам файл .as в соответствии с именем класса, который в нём лежит. Таким образом, если у вас есть
        ExpandedWrap disabled
          package HTools
          {
             class Zzz
             {
                ...
             }
          }


        То этот код должен быть в файле Zzz.as, который должен залегать в каталоге HTools.
        Сообщение отредактировано: Bulkoed -
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,2692 ]   [ 15 queries used ]   [ Generated: 8.10.24, 17:52 GMT ]