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

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

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

Регистрация: Jan 2006
Сообщений: 34
По умолчанию Обработка событий мыши

Написал вот такой код
Код:
var minx = -180;
var miny = -280;
var maxx = 30;
var maxy = 30;
var mc:MovieClip = _root.createEmptyMovieClip("map", 2000);
mc.useHandCursor = false;
var mc1:MovieClip = mc.createEmptyMovieClip("kr", 2001);
mc1.attachMovie("krug", "krug1", 4000, {_x:20, _y:20});
_root.createEmptyMovieClip("rama", 3001);
_root.rama.attachMovie("ramka", "ramka1", 1);
var z:Array = Array();
var pres = false;
MovieClip.prototype.rectangle = function(x1, y1, x2, y2, clr, alpha) {
	this.beginFill(clr, alpha);
	this.moveTo(x1, y1);
	this.lineTo(x2, y1);
	this.lineTo(x2, y2);
	this.lineTo(x1, y2);
	this.lineTo(x1, y1);
	this.endFill();
};
_root.createEmptyMovieClip("root_mask", 1000);
_root.root_mask.rectangle(0, 0, 500, 400, 100, 0);
_root.setMask(_root.root_mask);
var sch:Number = 10;
for (var j:Number = 0; j<=20; j++) {
	for (var i:Number = 0; i<=20; i++) {
		z[i+j] = mc.attachMovie("pol", "pol"+i+j, sch++);
		z[i+j]._x += 31*i;
		z[i+j]._y += 31*j;
	}
}
mc.onPress = function() {
	mc1._x += 10;
};
mc.onMouseDown = function() {
	pres = true;
	_global.smx = _root._xmouse;
	_global.smy = _root._ymouse;
};
_root.onMouseUp = function():Void  {
	pres = false;
};
_root.onMouseMove = function() {
	if (pres) {
		_global.dx = mc._x+(_root._xmouse-_global.smx);
		_global.dy = mc._y+(_root._ymouse-_global.smy);
		_global.smx = _root._xmouse;
		_global.smy = _root._ymouse;
		scrol();
	}
};
function scrol() {
	if (_global.dx<minx) {
		_global.dx = minx;
	} else if (_global.dx>maxx) {
		_global.dx = maxx;
	}
	if (_global.dy<miny) {
		_global.dy = miny;
	} else if (_global.dy>maxy) {
		_global.dy = maxy;
	}
	mc._x = _global.dx;
	mc._y = _global.dy;
}
Проблема состоит в том что при нажатии правой кнопки мыши происходит перемещение mc1 но хотелось бы что-бы он перемещался но только если не произошло событие .onMouseMove и в тоже время хотелось бы узнать по какому мувику я кликнул.

Старый 14.06.2006, 09:04
Techmaker вне форума Посмотреть профиль Отправить личное сообщение для Techmaker Найти все сообщения от Techmaker
  № 2  
Ответить с цитированием
Techmaker
"человек"
 
Аватар для Techmaker

Регистрация: Nov 2002
Адрес: +-
Сообщений: 1,807
Цитата:
Сообщение от referi
но хотелось бы что-бы он перемещался но только если не произошло событие .onMouseMove
Код:
mc.onPress = function() {
if(!pres){
	mc1._x += 10;
};
};
Цитата:
Сообщение от referi
и в тоже время хотелось бы узнать по какому мувику я кликнул.
Код:
mc.onPress = function() {
trace(this);
};
=)
__________________
flash it

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

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

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


 


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


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