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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 07.01.2008, 07:13
Punk T-34 вне форума Посмотреть профиль Отправить личное сообщение для Punk T-34 Посетить домашнюю страницу Punk T-34 Найти все сообщения от Punk T-34
  № 1  
Ответить с цитированием
Punk T-34
 
Аватар для Punk T-34

Регистрация: Aug 2005
Адрес: Польша
Сообщений: 376
Записей в блоге: 3
Отправить сообщение для Punk T-34 с помощью Skype™
По умолчанию Проверка состояний кнопок и управление ими.

Ещё один вопросик за сегодня...
Есть у меня 4 кнопки (rout25, rout28, rout29, rout30) и одна галочка (check).
Задача 1: Проверять, если нажаты все кнопки (они анимированные и с флагами), то нужно повесить галочку (check.gotoAndStop(2);). Если хотя-бы одна кнопка выключается - снимать галочку (check.gotoAndStop(1);).
Задача 2: Если поставить галочку, то включатся все кнопки и наоборот.
Вроде просто, вроде, даже код написал, но не работает

Вот, как я делал:
Код:
// Тут я задаю начальные состояния флагов.
Rout25On = false;
Rout28On = false;
Rout29On = false;
Rout30On = false;
// Здесь проверка: если, хотя-бы одна кнопка не нажата - снимаем галочку.
if ((Rout25On == false) || (Rout28On == false) || (Rout29On == false) || (Rout30On == false)) {
	check.gotoAndStop(1);
};
// Здесь проверяем, все ли кнопки нажаты, если да, то ставим галочку.
if ((Rout25On == true) && (Rout28On == true) && (Rout29On == true) && (Rout30On == true)) {
	check.gotoAndStop(2);
};
// Управление кнопками
rout25.onRelease = function() {
	if (Rout25On == false) {
		rout25.gotoAndPlay(2);
		Rout25On = true;
	} else {
		rout25.gotoAndPlay(16);
		Rout25On = false;
	}
};
rout28.onRelease = function() {
	if (Rout28On == false) {
		rout28.gotoAndPlay(2);
		Rout28On = true;
	} else {
		rout28.gotoAndPlay(16);
		Rout28On = false;
	}
};
rout29.onRelease = function() {
	if (Rout29On == false) {
		rout29.gotoAndPlay(2);
		Rout29On = true;
	} else {
		rout29.gotoAndPlay(16);
		Rout29On = false;
	}
};
rout30.onRelease = function() {
	if (Rout30On == false) {
		rout30.gotoAndPlay(2);
		Rout30On = true;
	} else {
		rout30.gotoAndPlay(16);
		Rout30On = false;
	}
};
/*А здесь, если ставим галочку, включаются все не нажатые кнопки, а нажатые остаются нетронутыми.*/
check.onPress = function() {
	if ((Rout25On == false) || (Rout28On == false) || (Rout29On == false) || (Rout30On == false)) {
                check.gotoAndStop(2);
		rout25.gotoAndPlay(2);
		rout28.gotoAndPlay(2);
		rout29.gotoAndPlay(2);
		rout30.gotoAndPlay(2);
		Rout25On = true;
		Rout28On = true;
		Rout29On = true;
		Rout30On = true;
	} else {
		check.gotoAndStop(1);
		rout25.gotoAndPlay(16);
		rout28.gotoAndPlay(16);
		rout29.gotoAndPlay(16);
		rout30.gotoAndPlay(16);
		Rout25On = false;
		Rout28On = false;
		Rout29On = false;
		Rout30On = false;
	}
};
__________________
Швейцарский нож в дизайне и рекламе:
• NORDSKILL •

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

Регистрация: Jul 2006
Адрес: Питер
Сообщений: 2,083
Отправить сообщение для MrPoma с помощью Skype™
код верный. что конкретно не получется? попробуйте воспользоваться trace(). если не получится выложите исходник

Старый 07.01.2008, 17:33
Punk T-34 вне форума Посмотреть профиль Отправить личное сообщение для Punk T-34 Посетить домашнюю страницу Punk T-34 Найти все сообщения от Punk T-34
  № 3  
Ответить с цитированием
Punk T-34
 
Аватар для Punk T-34

Регистрация: Aug 2005
Адрес: Польша
Сообщений: 376
Записей в блоге: 3
Отправить сообщение для Punk T-34 с помощью Skype™
Если конкретно, то галочка не реагирует на включение и выключение кнопок. Если включить все кнопки, то гаочка не ставится. И, соответственно, если выключить хотя-бы одну кнопку - галочка не снимается.
Вобщем, я приложил исходник:
Knopki&Galka.rar
__________________
Швейцарский нож в дизайне и рекламе:
• NORDSKILL •

Старый 08.01.2008, 15:50
Punk T-34 вне форума Посмотреть профиль Отправить личное сообщение для Punk T-34 Посетить домашнюю страницу Punk T-34 Найти все сообщения от Punk T-34
  № 4  
Ответить с цитированием
Punk T-34
 
Аватар для Punk T-34

Регистрация: Aug 2005
Адрес: Польша
Сообщений: 376
Записей в блоге: 3
Отправить сообщение для Punk T-34 с помощью Skype™
Может это как-то через глобальные переменные можно сделать?
__________________
Швейцарский нож в дизайне и рекламе:
• NORDSKILL •

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

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Вам нужно проверять состояние кнопок, каждый раз, при нажатии. А у вас проверки выполняются всего один раз.

Старый 08.01.2008, 23:05
Punk T-34 вне форума Посмотреть профиль Отправить личное сообщение для Punk T-34 Посетить домашнюю страницу Punk T-34 Найти все сообщения от Punk T-34
  № 6  
Ответить с цитированием
Punk T-34
 
Аватар для Punk T-34

Регистрация: Aug 2005
Адрес: Польша
Сообщений: 376
Записей в блоге: 3
Отправить сообщение для Punk T-34 с помощью Skype™
Но тут же я это и указываю, то есть, проверяю: для каждого onRelease свой if () { } else {};
Или что-то другое подразумевается?
__________________
Швейцарский нож в дизайне и рекламе:
• NORDSKILL •

Старый 09.01.2008, 10:15
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 7  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Подразумеваются первые два if в вашем коде.

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

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

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


 


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


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