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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.07.2007, 01:05
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 11  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Изменилось, там глубины от 0 начинаются И пустых не бывает.

Старый 27.07.2007, 03:07
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 12  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
_levelN - это не уровень, а этаж. Ваше текстовое поле создано на 0-м этаже, стало быть оно осталось далеко внизу.

Старый 27.07.2007, 11:57
bettrrr вне форума Посмотреть профиль Отправить личное сообщение для bettrrr Найти все сообщения от bettrrr
  № 13  
Ответить с цитированием
bettrrr
[+4 06.08.07]

Регистрация: Aug 2002
Сообщений: 44
Цитата:
Сообщение от Kikasso
_levelN - это не уровень, а этаж. Ваше текстовое поле создано на 0-м этаже, стало быть оно осталось далеко внизу.
Поясните пожалуйста..
при загрузке клипа я указываю 10, а при создании текстового поля 50.
Вы говорите, что 10 и 50 это разный тип слоёв?

PS: Я попробовал сделать
...
loadMuvie(_root.pepa_skin, 10);
...
_level10.createTextField("timer_field", 10, 887.8, 49.6, 82.2, 30);

Но тогда текстовое поле совсем не отображается


Последний раз редактировалось bettrrr; 27.07.2007 в 12:02.
Старый 27.07.2007, 12:32
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 14  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Вы ничего не можете создать на level, только подгрузить. Я привел аналогию с этажами, потому что это наглядно - ваш мувик это самый первый этаж (_level0). Вы можете сколько угодно вставать на стремянку, модете приклеить бумажку к потолку - но пол 10-го этажа выше вашего потолка. Не надо юзать - это тупик. Работайте на одном этаже. Создали пустой клип, загрузили в него - все счастливы.

P.S. Поле не создается, потому что клип еще не загрузился.

Старый 27.07.2007, 12:44
PikseL вне форума Посмотреть профиль Отправить личное сообщение для PikseL Посетить домашнюю страницу PikseL Найти все сообщения от PikseL
  № 15  
Ответить с цитированием
PikseL
 
Аватар для PikseL

Регистрация: Oct 2006
Адрес: Russia, Tyumen
Сообщений: 130
Отправить сообщение для PikseL с помощью ICQ Отправить сообщение для PikseL с помощью Skype™
А вы не сильно заморачиваетесь? Может контейнер вложить в мувик, а в этом мувике на верхнем слое просто сделать текст?

Старый 27.07.2007, 12:45
bettrrr вне форума Посмотреть профиль Отправить личное сообщение для bettrrr Найти все сообщения от bettrrr
  № 16  
Ответить с цитированием
bettrrr
[+4 06.08.07]

Регистрация: Aug 2002
Сообщений: 44
Цитата:
Сообщение от Kikasso
Вы ничего не можете создать на level, только подгрузить. Я привел аналогию с этажами, потому что это наглядно - ваш мувик это самый первый этаж (_level0). Вы можете сколько угодно вставать на стремянку, модете приклеить бумажку к потолку - но пол 10-го этажа выше вашего потолка. Не надо юзать - это тупик. Работайте на одном этаже. Создали пустой клип, загрузили в него - все счастливы.

P.S. Поле не создается, потому что клип еще не загрузился.
Ппасибо, понятно!

В окне превью я нажал Ctrl+L
И в окне вывода были такие строки:
Код:
Level #10: Frame=1
  Shape:
  Movie Clip: Frame=1 Target="_level10.instance3"
    Shape:
  Shape:
  Movie Clip: Frame=1 Target="_level10.instance4"
    Shape:
  Shape:
  Movie Clip: Frame=1 Target="_level10.instance5"
    Shape:
  Shape:
почему на уровне 3 объекта, хотя у меня только один раз используется clipLoader.loadClip("qwe.swf", 10) ?

Старый 27.07.2007, 12:55
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 17  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Разберемся с терминами. Есть уровень (level), есть глубина (depth) и есть слой (layer).
Когда флеш плеер подгружает swf, он помещает его в _level0. И когда в этом swf мы обращаемся к _root, то на самом деле мы обращаемся к _level0. Если мы загружаем еще один swf в уровень, скажем в _level1, то его _root, будет обращаться к _level1. Это первое его отличие от глубины, второе, это то, что мы не можем создать мувиклип, текстовое поле или приаттачить мувиклип в уровень. Только загрузить туда другой swf и только ГЛОБАЛЬНЫМИ функциями, сделать это методами MovieClip нельзя.

Каждый мувиклип (включая основной таймлайн, он же _root, он же _levelN) имеет диапазон глубин -16'384 .. 1'048'575. Где:
0..1'048'575 - предназначены для программно использования
-16'383..-1 - для объектов созданных вручную (то есть все мувиклипы, кнопки, текстовый поля, который вы расположили в среде разработки, помещаются в этом диапазоне). Конечно можно программно и сюда помещать свои объекты, но таким образом вы можете занять уже использованную глубину и удалить объект который вы расположили в ручную. Понятие слоев, есть только внутри fla для удобства работы, при создании swf, все объекты помещаются на заданные глубины.
-16'384 - для программного использования, когда вам надо расположить программно объект ниже, чем нарисованные объекты.
Создавая новый мувиклип, вы также получаете в нем диапазон глубин как и было описано выше.

Теперь ваш код.
Код:
loadMovie(_root.pepa_skin, 10);
Это значит, что раньше у вас был:
Код:
_level0
а теперь
Код:
_level0
_level10
А после
Код:
_level10.createTextField("timer_field", 10, 887.8, 49.6, 82.2, 30);
уже
Код:
_level0
_level10
	timer_field (на глубине 10)
Но по скольку ваш код выполнялся линейно, то к моменту выполнения _level10.createTextField в _level10 еще не был загружен мувиклип. Так как выполнение кода асинхронно загрзуке (пока ОС найдет местоположение файла, пока головки в диске займут нужное место, пока считают, все это происходит медленнее, чем выполнение кода). Поэтому текст и не создается.
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 27.07.2007 в 13:34.
Старый 27.07.2007, 13:01
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 18  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
Упс. Вот это лекция. Исчерпывающе.
"Пол" и "потолок" на языке цифр ))
Цитата:
Сообщение от bettrrr
почему на уровне 3 объекта, хотя у меня только один раз используется clipLoader.loadClip("qwe.swf", 10) ?
Ну ведь мувик-то не пустой грузите наверное.


Последний раз редактировалось Kikasso; 27.07.2007 в 13:04.
Старый 27.07.2007, 13:02
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 19  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Мммм, iNils, а где там _level10 в коде автора? Ну кроме loadClip, конечно.

Старый 27.07.2007, 13:26
bettrrr вне форума Посмотреть профиль Отправить личное сообщение для bettrrr Найти все сообщения от bettrrr
  № 20  
Ответить с цитированием
bettrrr
[+4 06.08.07]

Регистрация: Aug 2002
Сообщений: 44
iNils - круто! Очень понятно объяснил! Спасибо! Лекция удачна.

2 __etc: Тут у меня была попытка http://www.flasher.ru/forum/showpost...4&postcount=13 создать на 10 уровне.
Но я не знал, что плеер не ждёт, пока выполнится предидущее действие и продолжает выполнение кода.

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

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

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


 


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


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