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

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

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

Регистрация: Sep 2013
Сообщений: 16
Question Вставить текст-ссылку в AS3

Здравствуйте!
Подскажите, пожалуйста, как вставить текст-ссылку в этот AS3. Нашла классные исходники галереи-клипа FullScreenLib, а как сверху сделать текст-ссылку на возврат на главную страничку не знаю (гуглила, пробовала читать Руководство AS3...). HTML5, CSS3 запросто, а вот в вашей кухне ни бум-бум... Спасибо.

Код AS3:
package 
{
	import com.gfxcomplex.display.PanningFullScreenImage;
	import flash.display.Sprite;
	import flash.display.StageDisplayState;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.events.ProgressEvent;
 
	public class PanningMain extends Sprite
	{
  private var testing:PanningFullScreenImage;
 
  public function PanningMain():void
  {
  	if (stage)
  	{
    init();
  	}
  	else
  	{
    addEventListener(Event.ADDED_TO_STAGE, init);
  	}
  }
 
  private function init(e:Event = null):void
  {
  	removeEventListener(Event.ADDED_TO_STAGE, init);
 
  	testing = new PanningFullScreenImage("img/001.jpg",true);
  	testing.addEventListener(Event.COMPLETE, onComplete);
  	testing.addEventListener(ProgressEvent.PROGRESS, onProgress);
  	addChild(testing);
 
  	stage.addEventListener(MouseEvent.CLICK, onClick);
  }
 
  private function onClick(e:MouseEvent):void
  {
  	stage.displayState = StageDisplayState.FULL_SCREEN;
  }
 
  private function onProgress(e:ProgressEvent):void
  {
  	trace(String(int((e.bytesLoaded / e.bytesTotal) * 100)));
  	loading_txt.text = String(int((e.bytesLoaded / e.bytesTotal) * 100));
  }
 
  private function onComplete(e:Event):void
  {
  	trace(e);
  }
 
	}
 
}


Последний раз редактировалось Wolsh; 14.09.2013 в 22:44.
Старый 14.09.2013, 22:43
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Aprel, для оформления своего кода надо использовать теги [as3][/as3]
__________________
Reality.getBounds(this);

Старый 14.09.2013, 22:54
Aprel вне форума Посмотреть профиль Отправить личное сообщение для Aprel Найти все сообщения от Aprel
  № 3  
Ответить с цитированием
Aprel

Регистрация: Sep 2013
Сообщений: 16
Пасибы, учла... А подсказку на вопрос зажали? Я тогда Вас в Питере на вопрос: "Как доехать до Русского музея" на Лиговку отправлю...)

Старый 14.09.2013, 23:30
Bletraut вне форума Посмотреть профиль Отправить личное сообщение для Bletraut Найти все сообщения от Bletraut
  № 4  
Ответить с цитированием
Bletraut
 
Аватар для Bletraut

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Я не работал с подобной библиотекой, но могу как решение предложить повесить на какой-то объект слушатель и заново загрузить эту библиотеку т.е.

Код AS3:
//Пишем в инит
stage.addEventListener(MouseEvent.DOUBLE_CLICK, resetTesting);
 
//Пишем в коде
public function resetTesting(e:MouseEvent):void
{
   testing = new PanningFullScreenImage("img/001.jpg",true);
}
Теперь возможно при двойном клике галерея будет с первой картинки показываться.

Старый 14.09.2013, 23:31
C4Grey вне форума Посмотреть профиль Отправить личное сообщение для C4Grey Найти все сообщения от C4Grey
  № 5  
Ответить с цитированием
C4Grey

Регистрация: May 2007
Сообщений: 181
Отправить сообщение для C4Grey с помощью ICQ Отправить сообщение для C4Grey с помощью Skype™
Используя TextFormat:
Код AS3:
var Format:TextFormat = new TextFormat('Calibri', 18);
Format.underline = true;
Format.target = '_blank';
Format.url = 'http://127.0.0.1';
var Text:TextField = new TextField();
Text.defaultTextFormat = Format;
Text.text = 'Click me';
addChild(Text);
Используя события клика и navigateToURL:
Код AS3:
var Text:TextFiled = new TextFiled();
Text.text = 'Click me';
addChild(Text);
Text.addEventListener(MouseEvent.CLICK, OnTextClick);
...
private function OnTextClick(e:MouseEvent):void 
{
	navigateToURL('http://127.0.0.1');
}
Второй метод сгодится в случае, если нужна навигация внутри флешки, а не по URL(на случай если я неверно понял вопрос). Ну и, само-собой, их можно комбинировать. Чтобы разместить текст в нужных координатах, следует воспользоваться свойствами Text.x и Text.y.


Последний раз редактировалось C4Grey; 15.09.2013 в 04:25.
Старый 15.09.2013, 00:28
Aprel вне форума Посмотреть профиль Отправить личное сообщение для Aprel Найти все сообщения от Aprel
  № 6  
Ответить с цитированием
Aprel

Регистрация: Sep 2013
Сообщений: 16
C4Grey не получилось...( Не рычи, я сама дура в as3... Я 3 дня ляпала с учебников и нифика... CS6 выдает ошибки 1071 и 1084... Ваще голова кругом идет

Старый 15.09.2013, 01:00
C4Grey вне форума Посмотреть профиль Отправить личное сообщение для C4Grey Найти все сообщения от C4Grey
  № 7  
Ответить с цитированием
C4Grey

Регистрация: May 2007
Сообщений: 181
Отправить сообщение для C4Grey с помощью ICQ Отправить сообщение для C4Grey с помощью Skype™
1071 - скорее всего, при объявлении переменной где-то нет ключевого слова var
1084 - где-то не закрыта скобка
FlashDevelop умеет показывать места в коде, где случаются подобные ошибки(возможно, и Flash CS6 умеет, уже и не помню).

Старый 15.09.2013, 01:32
Aprel вне форума Посмотреть профиль Отправить личное сообщение для Aprel Найти все сообщения от Aprel
  № 8  
Ответить с цитированием
Aprel

Регистрация: Sep 2013
Сообщений: 16
C4Grey Ага... объяснил! Блондинке... ! Точно все на Лиговке будут искать Русский музей и Эрмитаж..) СерыйС4, моно подробнее..

Старый 15.09.2013, 04:35
C4Grey вне форума Посмотреть профиль Отправить личное сообщение для C4Grey Найти все сообщения от C4Grey
  № 9  
Ответить с цитированием
C4Grey

Регистрация: May 2007
Сообщений: 181
Отправить сообщение для C4Grey с помощью ICQ Отправить сообщение для C4Grey с помощью Skype™
Измененная функция init, которая гарантировано работает:
Код AS3:
private function init(e:Event = null):void
{
	removeEventListener(Event.ADDED_TO_STAGE, init);
 
	testing = new PanningFullScreenImage("http://upload.wikimedia.org/wikipedia/commons/6/62/Cthulhu_and_R'lyeh.jpg", true);
	addChild(testing);
 
	var Format:TextFormat = new TextFormat('Calibri', 42);
	Format.underline = true;
	Format.target = '_blank';
	Format.url = 'http://google.com';
	var Text:TextField = new TextField();
	Text.textColor = 0x9F1111;
	Text.autoSize = TextFieldAutoSize.LEFT;
	Text.defaultTextFormat = Format;
	Text.text = 'Click me';
	addChild(Text);
}
Если нужно, чтобы текст выводился не поверх картинки - необходимо менять код внутри PanningFullScreenImage, определющий границы панорамирования изображения(сейчас используются размеры всей сцены) и добавлять маску. Да, внутри PanningFullScreenImage используются сторонние компоненты(caurina.transitions.Tweener), их необходимо также подключить к проекту(если это еще не сделано, и проект в таком виде, как он представлен в 0 посте, не компилируется, иначе этот пункт можно игнорировать). Чтобы более подробно ответить на вопрос, мне нужно увидеть струтктуру проекта.

Старый 15.09.2013, 06:14
Aprel вне форума Посмотреть профиль Отправить личное сообщение для Aprel Найти все сообщения от Aprel
  № 10  
Ответить с цитированием
Aprel

Регистрация: Sep 2013
Сообщений: 16
C4Grey большое спасибо за подсказки! Я попробовала, но у меня выдает ошибки 1046, 1180, 1120.... ( Все равно буду ковырять... Вы мне только подскажите направление (файлы прикреплю).
Вложения
Тип файла: zip home.zip (1.38 Мб, 30 просмотров)

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

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

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


 


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


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