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

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

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

Регистрация: Jan 2012
Сообщений: 836
По умолчанию Перемещение главного окна

Есть флешка. На сцене брошен большой квадрат, размером в 2000х2000(условно). В окне браузера естественно она не будет помещаться у тех, у кого монитор небольшого разрешения. Вопрос. Как сделать так, чтобы при клике мыше и держа её можно было перемещаться по этому большому квадрату. То есть если на нем брошены объекты, то просмотреть можно не только те, что помещаются в браузере, но и те что скрыты за пределом) Как я понял нужно создать событие на кнопку мыши, но как то не получается) Помогите кто может)

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

Регистрация: Aug 2007
Адрес: Ukraine, Kyiv
Сообщений: 643
Отправить сообщение для olexandr с помощью ICQ Отправить сообщение для olexandr с помощью MSN Отправить сообщение для olexandr с помощью Skype™
самый простой пример.

Код AS3:
		target.addEventListener(MouseEvent.MOUSE_DOWN, downHandler);
 
		private function downHandler(e:MouseEvent):void {
			stage.addEventListener(MouseEvent.MOUSE_UP, upHandler);
			target.startDrag(false, _bounds);
		}
 
		private function upHandler(e:MouseEvent):void {
			target.stopDrag();
			stage.removeEventListener(MouseEvent.MOUSE_UP, upHandler);
		}
 
	}
}
target - объект, по которому кликаем и таскаем
bounds - границы перетаскивания
__________________
сайт, vk

Старый 14.06.2013, 01:50
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 3  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Цитата:
\class2.as, строка 9 1013: Атрибут "private" можно использовать для определений свойств класса.
Вот такую ошибку выдает

Старый 14.06.2013, 01:52
maincode вне форума Посмотреть профиль Отправить личное сообщение для maincode Посетить домашнюю страницу maincode Найти все сообщения от maincode
  № 4  
Ответить с цитированием
maincode

Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
пишите на кадрах в IDE? ай яй яй... ну что с вами поделать... убирайте private
__________________
FlashPress.ru | Blog

Старый 14.06.2013, 02:06
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 5  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Цитата:
target.addEventListener(MouseEvent.MOUSE_DOWN, downHandler);

function downHandler(e:MouseEvent):void {
stage.addEventListener(MouseEvent.MOUSE_UP, upHandler);
target.startDrag(false, _bounds);
}

function upHandler(e:MouseEvent):void {
target.stopDrag();
stage.removeEventListener(MouseEvent.MOUSE_UP, upHandler);
}
Теперь выдаёт
Цитата:
Монтажный кадр 1, слой "Слой 2", кадр 1, строка 5 1067: Неявное приведение значения типа flash.display:MovieClip к несоответствующему типу flash.geom:Rectangle.
Можете расшифровать "... на кадрах IDE"?) Как по другому нужно? Или правильнее даже

Старый 14.06.2013, 02:09
maincode вне форума Посмотреть профиль Отправить личное сообщение для maincode Посетить домашнюю страницу maincode Найти все сообщения от maincode
  № 6  
Ответить с цитированием
maincode

Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
_bounds - это у вас MovieClip? а должен быть Rectangle
Код AS3:
var _bounds:Rectangle = new Rectangle(...);
Правильнее будет писать в нормальном редакторе кода, например Adobe Flash Builder, Flash Develop и т.п.
__________________
FlashPress.ru | Blog

Старый 14.06.2013, 02:19
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 7  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Цитата:
Правильнее будет писать в нормальном редакторе кода, например Adobe Flash Builder, Flash Develop и т.п.
На сколько мне известно, это аналоги реального флеша с ограниченными возможностями)

А по поводу кода, что-то не очень работает) Точнее, ошибок не выдаёт, перемещать можно, но флеш не видит границ)
_bounds - растягивается до миллионых размеров наверно
Вложения
Тип файла: rar nowrk.rar (7.0 Кб, 35 просмотров)

Старый 14.06.2013, 02:28
maincode вне форума Посмотреть профиль Отправить личное сообщение для maincode Посетить домашнюю страницу maincode Найти все сообщения от maincode
  № 8  
Ответить с цитированием
maincode

Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
Цитата:
Сообщение от Godwarlock Посмотреть сообщение
На сколько мне известно, это аналоги реального флеша с ограниченными возможностями)
Adobe Flash - это графический редактор, инструмент для рисования, создания анимации, но ни как не инструмент для написания кода. Конечно вы можете в нем писать код, но это все равно что писать Докторскую диссертацию в Фотошопе, когда есть Word для этих целей. Точно так же для написания кода существуют редакторы кода FlashBuilder, FlashDevelop и другие аналоги...


А по поводу вашего кода - наверно вы не правильно определили границы _bounds
__________________
FlashPress.ru | Blog

Старый 14.06.2013, 02:36
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 9  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
А как их определить?
Цитата:
var _bounds:Rectangle = new Rectangle();
Вот здесь что-то надо добавить? Или во флеше символ _bounds должен быть каким-то определенным) Или в коде нужно прописать X и Y?)

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Godwarlock, вам надо бы конечно для начала сам as3 изучить что бы очевидные глупые вопросы не задавать.
А у
Код AS3:
var _bounds:Rectangle = new Rectangle();
в конструкторе идут парметры [x,y,width,height]. Но думаю это вам ни о чем не говорит, поэтому чтобы создать границы вам нужно сделать так.
Код AS3:
var _bounds:Rectangle = target.getRect(target);

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

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

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


 


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


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