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

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

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

Регистрация: Jul 2006
Адрес: Moscow
Сообщений: 14
По умолчанию Проблема с 2х позиционной кнопкой

Не до конца понимаю, как сделать 2х позиционную кнопку(Pause/Play). Имея при этом 4 изображения - Два изображения для обычного состояния кнопок и два при наведении, изображения формата *.png. До этого применяла обычную стандартную кнопку и прописывала код
Код:
on (release) {
	if (_global.i == 1) {
		_root.stop();
		_global.i--;
	} else {
		if (_global.i == 0) {
			_root.play();
			_global.i++;
		}
	}
}
Но не меняла в ней надписи типа on/off, а сейчас хотелось бы сделать покрасивше. Подскажите, пожалуйста.

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

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
Вместо кнопки - мувиклип.
При нажатии - переназначение обработчика события onRollOver, чтобы показывалась другая картинка, если надо - изменение текста подписи.


Последний раз редактировалось DarkLight; 16.08.2006 в 19:15.
Старый 16.08.2006, 23:26
D12 вне форума Посмотреть профиль Отправить личное сообщение для D12 Найти все сообщения от D12
  № 3  
Ответить с цитированием
D12
меценат
 
Аватар для D12

блогер
Регистрация: Jan 2004
Адрес: D
Сообщений: 1,592
Записей в блоге: 2
Этот код сделай для кнопки игра/пауза :

Код:
_root.zzz = 1;
_root.button.onPress = function() {
	_root.zzz = -_root.zzz;
};
_root.onEnterFrame = function() {
	if (_root.zzz == -1) {
		_root.button.gotoAndStop(2);
	}
	if (_root.zzz == 1) {
		_root.button.gotoAndStop(1);
	}
};


Этот код для кнопки навел/отвел :

Код:
_root.mc.stop();
_root.mc.onRollOut = function() {
	this.gotoAndStop(1);
};
_root.mc.onRollOver = function() {
	this.gotoAndStop(2);
};
или лутше так , забуть про onRollы :

Код:
_root.mc.onEnterFrame = function() {
	if (this.hitTest(_root._xmouse, _root._ymouse)) {
		this.gotoAndStop(2);
	}
	if (not this.hitTest(_root._xmouse, _root._ymouse)) {
		this.gotoAndStop(1);
	}
};
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники

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

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
2D12
Лучше все-таки первый вариант: хитТесты - это пустая трата вычислительных ресурсов, т к будет каждый кадр вызываться gotoAndStop, да и сам хитТест тоже вещь не самая быстрая

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

Регистрация: Jul 2006
Адрес: Moscow
Сообщений: 14
Я попробовала сама добиться чего-то...в итоге получилось много кода, но работающая кнопка. Я наверное слишком замудрила, уровень моих знаний во флеше не позволил мне все это упростить
У меня две кнопки одна за другой с 3мя состояниями. названия -

btn_pause_disabled,btn_pause,btn_pause_over для кнопки "Пауза"

btn_play_disabled,btn_play,btn_play_over для кнопки "Играть"

Код:
btn_pause_disabled.onRollOver=function()
	{
	_root.btn_pause_disabled._visible=false;
	}

	btn_pause.onRollOut=function()
{
_root.btn_pause_disabled._visible=true;
}
btn_pause.onPress = function () 
{
_root.btn_pause._visible=false;
_root.stop();


btn_pause_over.onRollOut = function () 
{
_root.btn_pause._visible=false;
_root.btn_pause_over._visible=false;
_root.btn_play_disabled._visible=true;
}}

	btn_play_disabled.onRollOver=function()
	{
	_root.btn_play_disabled._visible=false;
	}

	btn_play.onRollOut=function()
{
_root.btn_play_disabled._visible=true;
}

btn_play.onPress = function () 
{
_root.btn_play._visible=false;
_root.play();
}

btn_play_over.onRollOut = function () 
{_root.btn_play._visible=true;
_root.btn_pause._visible=true;
_root.btn_pause_over._visible=true;
_root.btn_pause_disabled._visible=true;
}
Вложения
Тип файла: rar Button1.rar (25.7 Кб, 39 просмотров)

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

блогер
Регистрация: Jan 2004
Адрес: D
Сообщений: 1,592
Записей в блоге: 2
Уважаемый DarkLight я никогда неусомнюсь что вы опытный програмист ,
но в данном вопросе вынужден с вами несогласится функции "onRoll" работают некоректно и очень плохо отлавливают события , соглашусь с вами что "хитТест" не идеальный вариант но и нетакой плохой что бы им пренебрегать в определенных ситуациях , я же предпочитаю математически задовать контур фигуры так я получаю самый желанный вариант .
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники

Старый 17.08.2006, 21:57
DarkLight вне форума Посмотреть профиль Отправить личное сообщение для DarkLight Посетить домашнюю страницу DarkLight Найти все сообщения от DarkLight
  № 7  
Ответить с цитированием
DarkLight
ветеран форума
 
Аватар для DarkLight

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
2D12
Я согласен, что onRoll не идеален, но здесь 1 кнопка, и проблемы врядли возникнут. Если несколько кнопок рядом повешены на онРоллы, и РоллАут и РоллОвер практически одновременны, то действительно одни проблемы.

А про математическое кодирование согласен на 100%

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

блогер
Регистрация: Jan 2004
Адрес: D
Сообщений: 1,592
Записей в блоге: 2
И со слезами на глазах , -Дай мне тебя обнять родной мой =)

P.S. Целую : )
__________________
Безвыходных положений небывает © Барон Мюнхаузен=)Исходники

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

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

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


 


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


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