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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.02.2010, 18:18
zveryuka вне форума Посмотреть профиль Отправить личное сообщение для zveryuka Найти все сообщения от zveryuka
  № 1  
Ответить с цитированием
zveryuka
 
Аватар для zveryuka

Регистрация: Nov 2007
Сообщений: 165
Question из loader.content сделать кнопку drag btn

Добрый день.
делаю первые шаги в АС3..

После загрузки изображения во флеш, я хочу сделать загруженную картинку кликабельной.

Вот к коде ниже я пытался сделать drag картинки, но ничего не получилось, может изображение надо загружать в какой-то контейнер чтобы использовать далее как кнопку?



Код AS3:
stop();
 
import flash.display.*;
import flash.net.URLRequest;
import flash.events.MouseEvent;
 
 
 
 
var rec:Sprite = new Sprite();
rec.graphics.beginFill(0xFF0000);
rec.graphics.drawRoundRect(300, 200, 200,200,10,10);
rec.graphics.endFill();
addChild(rec);
rec.alpha=100;
 
BasicLoader();
 
function BasicLoader() {
 
	var loader:Loader = new Loader();
	var url:String="адрес"+fileRef.name;
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoaded);
	var urlReq:URLRequest=new URLRequest(url);
	loader.load(urlReq);
 
}
function onImageLoaded(event:Event) {
 
	var loader:Loader=Loader(event.target.loader);
	loader.content.mask=rec;
	loader.content.x=300;
	loader.content.y=200;
	// loader.width = 100;
 
	addChild(loader.content);
 
	loader.content.addEventListener(MouseEvent.MOUSE_DOWN, drag);
	loader.content.addEventListener(MouseEvent.MOUSE_UP, noDrag);
}
 
 
function drag(event:MouseEvent):void {
	trace("drag");
}
function noDrag(event:MouseEvent):void {
	trace("noDrag");
}
__________________
Да здравствует то, благодаря чему мы не смотря ни на что!

Старый 25.02.2010, 18:58
ipman вне форума Посмотреть профиль Отправить личное сообщение для ipman Найти все сообщения от ipman
  № 2  
Ответить с цитированием
ipman

Регистрация: Feb 2010
Сообщений: 24
Код AS3:
		PicLoader.load(new URLRequest(ImagePath+caption2.text));
		PicLoader.x = 85;
		PicLoader.addEventListener(MouseEvent.CLICK, onBtn1);
	function onBtn1(e:MouseEvent):void
	{
		trace ("Клик по картинке");
		}
вот так я сделал загруженную картинку кликабельной... вроде никаких проблем.

Старый 25.02.2010, 19:48
zveryuka вне форума Посмотреть профиль Отправить личное сообщение для zveryuka Найти все сообщения от zveryuka
  № 3  
Ответить с цитированием
zveryuka
 
Аватар для zveryuka

Регистрация: Nov 2007
Сообщений: 165
вот немного переделал свой код, но выбивает ошибку когда пишу
Код AS3:
PicLoader.startDrag();
- чтобы перетягивать именно PicLoader

Каким способом можно реализовать перетягивание PicLoader или изображения что в нем?

Код AS3:
import flash.display.*;
import flash.net.URLRequest;
import flash.events.MouseEvent;
 
 
 
 
var rec:Sprite = new Sprite();
rec.graphics.beginFill(0xFF0000);
rec.graphics.drawRoundRect(300, 200, 200,200,10,10);
rec.graphics.endFill();
addChild(rec);
rec.alpha=100;
 
var PicLoader:Loader = new Loader();
PicLoader.mask=rec;
PicLoader.load(new URLRequest("адрес"+fileRef.name));
		PicLoader.x = 300;
		PicLoader.y = 200;
		addChild(PicLoader);
 
		PicLoader.addEventListener(MouseEvent.MOUSE_DOWN, drag);
	        PicLoader.addEventListener(MouseEvent.MOUSE_UP, noDrag);
 
function drag(e:MouseEvent):void {
	PicLoader.startDrag();
 
}
function noDrag(e:MouseEvent):void {
	PicLoader.stopDrag();
}
Добавлено через 19 часов 14 минут
Вроде разобрался - создал контейнер
Код AS3:
var container_mc = new MovieClip();
addChild(container_mc);
container_mc.x=0;
container_mc.y=0;
//container_mc.alpha = .50;
container_mc.buttonMode=true;
и запихнул в него изображение... теперь всё прекрасно перетягивается
__________________
Да здравствует то, благодаря чему мы не смотря ни на что!

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

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

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


 


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


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