Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Функция в кнопке (http://www.flasher.ru/forum/showthread.php?t=87278)

N!kE 02.11.2006 02:49

Функция в кнопке
 
У меня на кнопке висит такая функция:
Код:

function rel() {
        if (this.onRelease) {
        sum();
        gotoAndStop(_currentframe+1)
}}

Флеш пишет:
Statement must appear within on handler function rel() {
В чем заключается ошибка?

KUZEN 02.11.2006 03:01

Потому что такого вида код нельзя вешать на кнопку в вашем случае это будет выглядеть так
Код:

on(release){
        sum();
        gotoAndStop(_currentframe+1)
}


N!kE 02.11.2006 03:21

Цитата:

Сообщение от KUZEN
Потому что такого вида код нельзя вешать на кнопку в вашем случае это будет выглядеть так
Код:

on(release){
        sum();
        gotoAndStop(_currentframe+1)
}


Знаю, но проблема в том, что кнопок таких 4000,
и в каждую вставлять по 3 строчки с учетом того, что сторчки одинаковые, сами понимаете, клавиатуру и руки жалко :)
Возможно есть какой-либо обходной маневр?

miramax 02.11.2006 03:42

Назови кнопку btn , и пиши такой код в мувике в котором расположена кнопка
Код:

btn.onRelease = function()
{
////.... doSomeThing()
}


N!kE 02.11.2006 03:51

Цитата:

Сообщение от miramax
Назови кнопку btn

повторюсь, кнопок 4000 шт...каждую обозвать будет оч. долго.
можно ли решить проблему програмно, с помощью одного общего скрипта для всех кнопок?
Грубо Говоря что-нибудь типа:
Код:

if (object == button) {
setName("какоенибудь имя")}


miramax 02.11.2006 04:02

Цитата:

Сообщение от N!kE
повторюсь, кнопок 4000 шт...

Ой..... Врядли получится запустить 4000 кнопок на одном экране. Используй циклы. У тебя все кнопки экземпляры одного символа? или разных символов?

N!kE 02.11.2006 04:05

Цитата:

Сообщение от miramax
Ой..... Врядли получится запустить 4000 кнопок на одном экране. Используй циклы. У тебя все кнопки экземпляры одного символа? или разных символов?

1000 кадров, по 4 кнопки в каждом ;)
в итоге собирается статистика, сколько и каких кнопок нажали :)
Кнопки все разные, имется ввиду, что скрипт для каждой из них очень похож, отличие всеголишь в значении переменной, которую я програмно генерирую (sum(); )
Осталось только програмно функцию сгенерировать :)

miramax 02.11.2006 04:08

Цитата:

Сообщение от N!kE
1000 кадров, по 4 кнопки в каждом ;)
в итоге собирается статистика, сколько и каких кнопок нажали :)
Кнопки все разные, имется ввиду, что скрипт для каждой из них очень похож, отличие всеголишь в значении переменной.

не юзал attachMovie ?
у тебя для каждой кнопки в библиотеке новый символ?

N!kE 02.11.2006 04:09

Цитата:

Сообщение от miramax
у тебя для каждой кнопки в библиотеке новый символ?

Да, именно

miramax 02.11.2006 04:21

Код:

var i:Number = 0;
while(i<100)
{
  this['btn_'+i].onRelease = function()
  {

  }
  i++
}

Я всё равно не до конца понял проблемы.
Проставь линкедж и аттач мувики. Другого варианта я не вижу

N!kE 02.11.2006 04:33

я просто хотел, чтобы в поле <instance name> все кнопки из библиотеки
обозвались "btn" с помощью скрипта, ибо не хочется 4000 кнопкам давать одинаковое название вручную
.....
Так, стоп, одинаковые названия нельзя? ;) только сейчас заметил...
И всетаки вопрос остается в силе...

wvxvw 02.11.2006 16:07

А что, все кнопки на столько разные, что нужно их всех создавать вручную? Если так, то, пожалуй, только копипейст... Теоретически наварное можно написать на JSFL переименование символов в библиотеке, но это заморочливо (для меня), да и потом, как определить, что переименовывать, а что не нужно...
Неужели нельзя обойтись парой-тройкой кнопок, просто с разными надписями?

etc 02.11.2006 16:28

http://potapenko.com/rus/extensions.htm

KUZEN 02.11.2006 16:35

Если уж у тебя все кнопки разные, давай им Linkage ручками допустим, 1 2 3 и т.д. а потом в цикле вытаскивай их ... проще никак ...

olexandr 18.09.2007 15:56

JSFL!!!

etc 18.09.2007 16:58

olexandr, а на даты постов посмотреть?


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

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