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

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

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

Регистрация: Dec 2005
Сообщений: 52
По умолчанию ...Проблема с кнопкой...

Здравствуйте!
Ситуация такая: есть 3 кнопки,надо сделать так, чтобы принажатии на одну кнопку, возле нее начинался проигрываться мувик(допустим до 10 кадра, а потом останавливался(этоя знаю как сделать)), но если нажать на другую кнопку, анимация для той кнопки которая уже была нажата, проигрывается до конца и одновременно с этим начинается такая же анимация для той кнопки которую мы нажали после.........

вообщем как сделать проверку release'a для всех кнопок...

надеюсь не очень вас запутал...

Заранее спасибо!

Старый 13.10.2006, 23:27
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
ну... раз в кнопке есть какая-то анимация, то надо полагать, что она инстанс мувиклипа. Тогда просто написать в онрелизе кнопок:
Код:
[другая кнопка №1].stop();
[другая кнопка №2].stop();
__________________
Hell is the possibility of sanity

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

Регистрация: Dec 2005
Сообщений: 52
нет, анимация не в кнопке, а в отдельном мувике....

ладно объясню по другому...

есть три кнопки, принажатии на любую кнопку возле нее плавно появляется квадрат, принажатии на другую кнопку этот квадрат по-тихоньку исчезает, а возле той последней нажатой кнопки он наоборот появляется... вот... и так с каждой кнопкой на какую бы ты ни нажал...

Старый 14.10.2006, 03:29
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
а что в этом плохого? ну... это можно подать как смелый дизайнерский ход... ну проигрывается, и пусть себе проигрывается... =)
__________________
Hell is the possibility of sanity

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

блогер
Регистрация: Jan 2004
Адрес: D
Сообщений: 1,592
Записей в блоге: 2
Код:
_root.goBtn = 0;
//контроль какая кнопка нажата .
_root.kontrol = 1;
//переменная которая контролирует что следует выполнять изчезание или появление.
_root.mc._alpha = 0;
//начальная яркость равна нулю.
//
this.btn1.onPress = function() {
	_root.goBtn = 1;
};
this.btn2.onPress = function() {
	_root.goBtn = 2;
};
this.btn3.onPress = function() {
	_root.goBtn = 3;
};
////
_root.onEnterFrame = function() {
	if (_root.goBtn == 1) {
		if (_root.kontrol == 1) {
			_root.mc._alpha -= 5;
			if (_root.mc._alpha<=0) {
				_root.kontrol = -_root.kontrol;
			}
		}
		if (_root.kontrol == -1) {
			_root.mc._x = 100;//координаты по оси икс для первой кнопки
			if (_root.mc._alpha<100) {
				_root.mc._alpha += 5;
			}
			if (_root.mc._alpha>=100) {
				_root.goBtn = 0;
				_root.kontrol = -_root.kontrol;
			}
		}
	}
	///   
	if (_root.goBtn == 2) {
		if (_root.kontrol == 1) {
			_root.mc._alpha -= 5;
			if (_root.mc._alpha<=0) {
				_root.kontrol = -_root.kontrol;
			}
		}
		if (_root.kontrol == -1) {
			_root.mc._x = 200;//координаты по оси икс для второй кнопки
			if (_root.mc._alpha<100) {
				_root.mc._alpha += 5;
			}
			if (_root.mc._alpha>=100) {
				_root.goBtn = 0;
				_root.kontrol = -_root.kontrol;
			}
		}
	}
	/// 
	if (_root.goBtn == 3) {
		if (_root.kontrol == 1) {
			_root.mc._alpha -= 5;
			if (_root.mc._alpha<=0) {
				_root.kontrol = -_root.kontrol;
			}
		}
		if (_root.kontrol == -1) {
			_root.mc._x = 300;//координаты по оси икс для третьей кнопки
			if (_root.mc._alpha<100) {
				_root.mc._alpha += 5;
			}
			if (_root.mc._alpha>=100) {
				_root.goBtn = 0;
				_root.kontrol = -_root.kontrol;
			}
		}
	}
};
посмотри изходник может подойдет =)

P.S. правда глюки немного есть , вообще иду спать попробую завтра поправить : )
Вложения
Тип файла: zip primer.zip (6.6 Кб, 41 просмотров)
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники

Старый 14.10.2006, 06:18
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
А... до меня наконц дошло =) это сделать нужно чтобы квадратики мигали рядом с кнопкой? а я думал, нужно от этого избавиться %)

2 D12:
Как раз тут в соседнем топе обсуждалось =) как бы это дать новичку решение позамысловатее =) (не то, чтобы я сам против, но все-тки =)
Зачем это так делать, когда есть всего-то 3 несчастные кнопки? Слишком много наворотов =)
Код:
var _btns:Array = [];
for (i=0; i<3; i++) {
	var _l1:MovieClip = _root.attachMovie("btn", "btn"+i, _root.getNextHighestDepth(), {_x:50, _y:10+i*110, _i:i});
	_btns.push(_l1);
	_l1._txt.text = "Button"+i;
	_l1.onRelease = function() {
		this.attachMovie("fader", "fader_mc", this.getNextHighestDepth(), {_x:100, _alpha:0});
		for (ii=0; ii<_root._btns.length; ii++) {
			if (this != _root._btns[ii]) {
				_root._btns[ii].onEnterFrame = function() {
					this.fader_mc._alpha--;
					if (this.fader_mc._alpha<=0) {
						delete this.onEnterFrame;
						this.fader_mc.removeMovieClip();
					}
				};
			} else {
				_root._btns[ii].onEnterFrame = function() {
					this.fader_mc._alpha++;
					if (this.fader_mc._alpha>=100) {
						delete this.onEnterFrame;
					}
				};
			}
		}
	};
}
Вложение 15467
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 27.04.2008 в 22:15.
Старый 14.10.2006, 07:10
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 7  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Или, если кнопки должны выплнять разеые действия, можно и так:
=)
Код:
var dispatcher:Number = 4;
for (i=0; i<3; i++) {
	var _l1:MovieClip = _root.attachMovie("btn", "btn"+i, _root.getNextHighestDepth(), {_x:50, _y:10+i*110, _i:i});
	_btns.push(_l1);
	_l1._txt.text = "Button"+i;
	var _l2:MovieClip = _root.attachMovie("fader", "fader"+i+"_mc", _root.getNextHighestDepth(), {_x:150, _y:10+i*110, _alpha:1});
	_l1.onRelease = function() {
		_root.dispatcher = this._i;
	};
}
_root.onEnterFrame = function() {
	switch (_root.dispatcher) {
	case 0 :
		_root.fader0_mc._alpha<=100?_root.fader0_mc._alpha+=5:_root.fader0_mc._alpha=100;
		_root.fader1_mc._alpha>=0?_root.fader1_mc._alpha-=5:_root.fader1_mc._alpha=0;
		_root.fader2_mc._alpha>=0?_root.fader2_mc._alpha-=5:_root.fader2_mc._alpha=0;
		break;
	case 1 :
		_root.fader1_mc._alpha<=100?_root.fader1_mc._alpha+=5:_root.fader1_mc._alpha=100;
		_root.fader0_mc._alpha>=0?_root.fader0_mc._alpha-=5:_root.fader0_mc._alpha=0;
		_root.fader2_mc._alpha>=0?_root.fader2_mc._alpha-=5:_root.fader2_mc._alpha=0;
		break;
	case 2 :
		_root.fader2_mc._alpha<=100?_root.fader2_mc._alpha+=5:_root.fader2_mc._alpha=100;
		_root.fader1_mc._alpha>=0?_root.fader1_mc._alpha-=5:_root.fader1_mc._alpha=0;
		_root.fader0_mc._alpha>=0?_root.fader0_mc._alpha-=5:_root.fader0_mc._alpha=0;
		break;
	default :
		trace("hit the button, u *beep*!");
		break;
	}
};
Вложение 15468
PS. А как вы делаете эти замечательные рамочки вокруг аттачментов? %)
PPS. Но в первом случае флешка меньше немного получается, хотя, я думаю, что если в этой всю ерунду поудалять, то будет одинаково =)
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 27.04.2008 в 22:16.
Старый 14.10.2006, 10:01
Хемуль вне форума Посмотреть профиль Отправить личное сообщение для Хемуль Найти все сообщения от Хемуль
  № 8  
Ответить с цитированием
Хемуль
Квач
 
Аватар для Хемуль

Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
2 wvxvw:
Рамочки вроде сам форум ставит когда прикрепление делаешь. ^_^
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого

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

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

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


 


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


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