Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Как увеличить половину/часть кнопки? (http://www.flasher.ru/forum/showthread.php?t=46705)

Aloneman 11.07.2003 14:52

Как увеличить половину/часть кнопки?
 
Здравствуйте!

У меня новый вопрос: есть кнопка, которая состоит их двух клипов. Мне в последствии нужно увеличить один из клипов, но не получается:

on (rollOver) {
_root.menu.button1.circle._xscale = 140;
_root.menu.button1.circle._yscale = 140;
}


Можно увеличить только кнопку с двумя клипами, но это не нужно:

on (rollOver) {
_root.menu.button1._xscale = 140;
_root.menu.button1._yscale = 140;
}

Можно ли вообще сделать это, увеличить только дин клип в кнопке? Подскажите, что можно придумать...

Dimonius 11.07.2003 17:04

Не совсем догнал, но если скинешь простой исходничек, думаю проблема быстро решится.

Aloneman 11.07.2003 18:11

Вложений: 1
Вот прилепил кусок от кода.
menu.zip

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

Спасибо!

Dimonius 11.07.2003 18:33

Вложений: 1
Готово.
Просто вытащи из кнопки мувики, а кнопку сделай невидимой.
Еще все три объекта можно запихнуть в один мувик - я называю это сложной кнопкой.

Aloneman 11.07.2003 18:42

Монстр! :-) Все работает!!

Спасибо!

Dimonius 11.07.2003 19:04

Рад был помочь ;)

Pietrovich 11.07.2003 20:30

или вариант без прозрачной кнопки:

вместо Button пользуеш MovieClip которого на нужных кадрах стоят метки: _up, _over, _down... такой клип ведет себя так-жа как кнопка если ему прикрутить обработку маусивентов...
единственное прийдется hitArea задавать програмно через
MovieClip.hitArea

Aloneman 14.07.2003 18:48

а что за hitArea такой можно узнать? в книге по actionScript'у, Flash 5 правда ничего не нашел. Он обязателен, если я захочу к примеру, чтобы клип издавал звук при наведении на него курсором но не кликая на него? И как точно его прописать?

Aloneman 14.07.2003 18:51

Dimonius, а еще вопрос, если я хочу чтобы не просто кружок увеличился, а плавно вырос, что нужно делать? Заменять этот кружок мувиком, который показывает увеличение? И конечно при отводе курсора также плавно уменьшать его...

Dimonius 14.07.2003 19:09

Я бы повесил по
OnClipEvent(enterFrame)
код типа for (i=100, i<=200, i++){
this._height = i;
this._width = i;
}
Чего типа этого я конечно много неправильно написал, но смысл в том чтоб програмно увеличивать размеры кружка до определенного момента (у меня здесь 200%). Тоже самое, но уменьшение в обратную сторону.

Aloneman 14.07.2003 19:20

Да уж, ничего не понял :-) Это уже не через кнопку нужно сделать?? Расскажи пожалуйста!!

Pietrovich 14.07.2003 19:34

Цитата:

а что за hitArea такой можно узнать? в книге по actionScript'у, Flash 5 правда ничего не нашел.
и вряд-ли найдеш... это от МХа... сорри что запутал...
(а вообще, бросай ты 5ку, ставь МХ!)

Aloneman 14.07.2003 19:44

Да я и поставил MX уже, просто учусь по книге Мука, но как денег наскребу, куплю по МХ книгу какую-нибудь тоже! Так что с hitArea - как ее использовать?? Мне для мувика пригодилось бы - он у меня по экрану ползает, а когда на него курсор заносится, то нужно чтобы он звук издавал. Это через hitArea нужно делать? И как прописывать то?? Научите, плиз!

Aloneman 14.07.2003 19:46

Dimonius, а можно мне через этот пример с пунктом меню рассказать, как нужно увеличивать? Ну пожалуйстааа! Без Вас мне не вжисть пока такое не сделать самому. :(

+=Metlio=+ 14.07.2003 19:55

Простите, конечно что вмешиваюсь в ваш дискуссию :p , но зачем использовать hitArea чтобы при наведении звук был???
Почему там не

on(rollOver) {
sound.play();
}


Ну или что нить такого типа??? :rolleyes:

Aloneman 14.07.2003 20:01

а on(rollOver) работает с клипами? тогда видимо все проще :)

+=Metlio=+ 14.07.2003 20:03

Конечно работает! ;)
Делай :)

Pietrovich 15.07.2003 03:34

Цитата:

но зачем использовать hitArea чтобы при наведении звук был???
ну в данной ситуации вероятно нафиг не нужен...
просто у кнопки есть приятная фича: то, что мы видим не обязательно то, на что кнопка реагирует... для этого и нужен hitArea...

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

З.Ы.: а в целом, имхо конечно, "кнопки маст дай!"... МС+АС рулит и меньше глючит.

+=Metlio=+ 15.07.2003 03:41

2Pietrovich: хммммм... конечно в чем-то ты прав про кнопки, но вот например если использовать Мувиклип как кнопку, то что мне надо что-ли создавать курсор свой с этим в экшене мучиться? Конечно понимаю, что курсор не обязателен в таком деле, но представь что на сайт заходит ламер какой нить :p , он даже не врубится :)
Ну это вроде всё про недостатки, а насчёт hitTest() насколько мне известно чаще его в играх используют флешевских.... :rolleyes:

+=Metlio=+ 15.07.2003 03:43

Ой, не hitTest() а hitArea ну........ожин чёрт :cool:

Aloneman 15.07.2003 14:37

Вы совсем про меня забыли! Вот :)
 
Помогите мне!

Нужно, чтобы не просто кружок резко увеличился, а плавно вырос? И конечно при отводе курсора также плавно уменьшать его до первоначального размера. Подскажите, как это сделать?

Dimonius 15.07.2003 14:43

Как я сказал ловишь событие от кнопки и запускаешь функцию.
которая по enterFrame увеличивала(уменьшала) бы твой кружок до нужной величины.

Можешь для этой функции внутри сложной кнопки создать еще один клип-контейнер.

Aloneman 15.07.2003 16:55

Вложений: 1
Dimonius, не увеличивается плавно :-(


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

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