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

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

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

Регистрация: Apr 2010
Сообщений: 137
По умолчанию Увеличение кнопки

Привет. Делаю так, что бы при наведении мыши на кнопку, кнопка увеличивалась до 130%, а когда мышь отводится, кнопка обратно возвращается до 100%. Но дело в том что она почему то не увеличивается, но когда я дописываю просто в строчечку _root , то увеличивается вся сцена вместе с кнопкой. И по идеи если убрать _root, то должна только кнопка увеличиваться (наплел в общем чуши, но думаю меня поняли). Вот код, пожалуйста укажите ошибку:
Код AS1/AS2:
function onRollOver_f ()
{
	this.onEnterFrame = function ()
	{
		if (this._xscale<130)
		{
			this._xscale += 5;
			this._yscale += 5;
		}
	}
}
 
function onRollOut_f ()
{
	this.onEnterFrame = function ()
	{
		if (this._xscale>100)
		{
			this._xscale -= 5;
			this._yscale -= 5;
		}
	}
}
 
password_btn.onRollOver = onRollOver_f;
password_btn.onRollOut = onRollOut_f;
password_btn - это кнопка

Может ли быть что не работает из-за того что у меня в начале кадра написано stop(); и вообще находится кнопка на 3 кадре, можно сказать по среди флешки? - в таком случае как сделать такую кнопку что бы вставить по среди флешки

Заранее благодарю


Последний раз редактировалось TurboDizel; 05.04.2010 в 22:59.
Старый 05.04.2010, 22:59
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Этот код должен работать, как вами задумано - в нем ошибок нет.
Ищите косяки в других местах.

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

Регистрация: Apr 2010
Сообщений: 137
Косяк уже понял какой, то что у меня в начале стоп кадру написано, естественно работать не будет там же onEnterFrame, как тогда сделать что бы кнопочка работали без этой функции на одном кадре?

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

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
При чем тут stop() и onEnterFrame - связи между ними нет никакой.
Если вы вызываете onEnterFrame, она так и будет работать, пока не сделаете delete onEnterFrame.
См. пример - все работает, все в одном кадре.
Вложения
Тип файла: rar btnRise.rar (4.9 Кб, 35 просмотров)


Последний раз редактировалось mooncar; 05.04.2010 в 23:07.
Старый 05.04.2010, 23:09
TurboDizel вне форума Посмотреть профиль Отправить личное сообщение для TurboDizel Найти все сообщения от TurboDizel
  № 5  
Ответить с цитированием
TurboDizel
 
Аватар для TurboDizel

Регистрация: Apr 2010
Сообщений: 137
Цитата:
Сообщение от mooncar Посмотреть сообщение
При чем тут stop() и onEnterFrame - связи между ними нет никакой.
Если вы вызываете onEnterFrame, она так и будет работать, пока не сделаете delete onEnterFrame.
См. пример - все работает, все в одном кадре.
Хм, странно, спс за подсказку а то бы с onEnterFrame мучался бы =)

Старый 05.04.2010, 23:14
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 6  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Пожалуйста.
На будущее - если у вас не очень большой код, то можно так и оставить, все будет работать.
Но правильно будет после достижения пределов возрастания-убывания удалять соответствующую onEnterFrame, иначе она так и остается работать.
Типа
Код AS1/AS2:
function onRollOver_f ()
{
	this.onEnterFrame = function ()
	{
		if (this._xscale < 130)
		{
			this._xscale += 5;
			this._yscale += 5;
		}
		else {
			delete this.onEnterFrame ;
		}
	}
}
 
function onRollOut_f ()
{
	this.onEnterFrame = function ()
	{
		if (this._xscale > 100)
		{
			this._xscale -= 5;
			this._yscale -= 5;
		}
		else {
			delete this.onEnterFrame ;
		}		
	}
}

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

Регистрация: Apr 2010
Сообщений: 137
Цитата:
Сообщение от mooncar Посмотреть сообщение
Пожалуйста.
На будущее - если у вас не очень большой код, то можно так и оставить, все будет работать.
Но правильно будет после достижения пределов возрастания-убывания удалять соответствующую onEnterFrame, иначе она так и остается работать.
Типа
А из-за того что она останется могут быть какие-то проблемы?

Старый 05.04.2010, 23:20
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 8  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Для вашего текущего проекта, вероятно нет. Одна забытая onEnterFrame погоды не сделает. Но вот 50 - уже может.
Просто вы опасно привыкните не убирать ненужное, а потом будете мучиться на крупном проекте - отчего все тормозит.
Или вдруг в каком-то другом проекте условие опять выполнится и забытая функция непредсказуемо отработает, вот и будете искать в 10 000 строках кода, что у вас могло сработать.
Учитесь все организовывать изначально верно. Убирать артефакты.
PS. То же относится к слушателям и т.д.


Последний раз редактировалось mooncar; 05.04.2010 в 23:30.
Старый 05.04.2010, 23:25
TurboDizel вне форума Посмотреть профиль Отправить личное сообщение для TurboDizel Найти все сообщения от TurboDizel
  № 9  
Ответить с цитированием
TurboDizel
 
Аватар для TurboDizel

Регистрация: Apr 2010
Сообщений: 137
Большое спасибо =) Такому в видеоуроках не учат, к сожалению. А кнопочку придется отложить, и делать дальше

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

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

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


 


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


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