Показать сообщение отдельно
Старый 12.04.2011, 14:47
teion вне форума Посмотреть профиль Отправить личное сообщение для teion Найти все сообщения от teion
  № 6  
Ответить с цитированием
teion

Регистрация: Mar 2011
Сообщений: 72
еще такой вопрос - как определить высоту верхнего края у мувиклипа, если он не отцентрирован в левый верхний угол, вот код на данный момент
Код AS3:
package  {
 
	import flash.display.MovieClip;
	import flash.display.Loader;
	import flash.net.URLRequest;
	import flash.events.MouseEvent;
	import flash.events.Event;
import flash.events.EventDispatcher;
 
	public class block1 extends MovieClip {
 
		var loader:Loader = new Loader();
		var url:URLRequest = new URLRequest("messag.swf");
		var cont:MovieClip; //контейнер для лоадера
		var dispx:Number; //переменные для коррекции места начала сдвига
		var dispy:Number;
		public function block1() {
			// constructor code
			loader.load(url);
			loader.contentLoaderInfo.addEventListener(Event.COMPLETE, initt);
		}
				public function initt (e:Event) {
					loader.y = 100;
					addChild(loader);
			var cont = loader.content as MovieClip;//используем содержимое как мувиклип, что бы добраться до его экземпляров
			cont.bo.addEventListener(MouseEvent.MOUSE_DOWN,mdown);
			cont.bo.addEventListener(MouseEvent.ROLL_OUT,mrollout);
 
				}
 
 
		private function mdown (e:MouseEvent):void{
			dispx = e.localX;//присваивание коррекции
			dispy = e.localY;
    (e.target as EventDispatcher).addEventListener(MouseEvent.MOUSE_MOVE, mmove);
    (e.target as EventDispatcher).addEventListener(MouseEvent.MOUSE_UP, mup);			
			}
			function mmove (e:MouseEvent) {
			loader.x = e.stageX-dispx;//сдвиг по Х работает нормально
			loader.y = e.stageY-dispy;//сдвиг по У работает не корректно из за того, что cont.bo не отцентрирован по верхнему краю
			trace(e);
			}
			private function mup (e:MouseEvent):void {
    (e.target as EventDispatcher).removeEventListener(MouseEvent.MOUSE_MOVE, mmove);
    (e.target as EventDispatcher).removeEventListener(MouseEvent.MOUSE_UP, mup);
			}
			private function mrollout (e:MouseEvent):void {
    (e.target as EventDispatcher).removeEventListener(MouseEvent.MOUSE_MOVE, mmove);
    (e.target as EventDispatcher).removeEventListener(MouseEvent.MOUSE_UP, mup);
			}
 
	}
 
}
Вложения
Тип файла: zip class.zip (20.0 Кб, 55 просмотров)


Последний раз редактировалось teion; 12.04.2011 в 14:50.