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

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

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

Регистрация: Mar 2010
Сообщений: 30
Question как правильно сделать меню?

привет! есть код:

Код AS1/AS2:
 
function createButtonInfo(){
	infoButton = attachMovie("buttonTopMenu","buttonInfoS",_root.getNextHighestDepth());
	infoButton.title_txt.text = "info";
	infoButton.stop();
} 
function controlButtonInfo(){
	var clickInfo = 0;
	infoButton.onRollOver = function(){
		infoButton.gotoAndStop(2);
	}
	infoButton.onRollOut = function(){
		if(clickInfo==1){
			infoButton.gotoAndStop(3);
		}else{
			infoButton.gotoAndStop(1);
		}
	}
	infoButton.onPress = function(){
		infoButton.gotoAndStop(3);
		clickInfo+=1;
		trace(clickInfo);
		if(clickInfo == 1){
			infoButton.gotoAndStop(3);
			createInfo();
		}
		if(clickInfo == 2){
			removeInfo();
		}
		if(clickInfo>1){
			clickInfo=0;
		}
	}
}
//-----------------
function createButtonVer(){
	verButton = attachMovie("buttonTopMenu","buttonVerS",_root.getNextHighestDepth());
	verButton._x=110;
	verButton.title_txt.text = "version history" ;
	verButton.stop();
 
}
function controlButtonVer(){
	var clickVer = 0;
	verButton.onRollOver = function(){
		verButton.gotoAndStop(2);
	}
	verButton.onRollOut = function(){
		if(clickVer==1){
			verButton.gotoAndStop(3);
		}else{
			verButton.gotoAndStop(1);
		}
	}
	verButton.onPress = function(){
		verButton.gotoAndStop(3);
		clickVer+=1;
		trace(clickVer);
		if(clickVer == 1){
			verButton.gotoAndStop(3);
			createVer();
		}
		if(clickVer == 2){
			removeVer();
		}
		if(clickVer>1){
			clickVer=0;
		}
	}
}
function initTopMenu(){
	createButtonInfo();
	controlButtonInfo();
 
	createButtonVer();
	controlButtonVer();
}
 
initTopMenu();
есть две кнопки, создаются одинаково(из одного мувика делаются), работают одинаково, но вызывают разные функции. я сделал здесь всякие ролловеры, роллоуты, что бы при нажатии на кнопку, кнопка как то нам отработала, и отметилась, что она нажата, при повторном нажатии отметка снимается.

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

как это сделать, подскажите пожалуйста.
Вложения
Тип файла: rar menuButtons1.rar (11.7 Кб, 97 просмотров)

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

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Это называется не "подскажите", а "дайте кусок кода".
Это в вакансии, с озвучиванием суммы денег.
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

Старый 19.12.2010, 14:58
Blackjack1616 вне форума Посмотреть профиль Отправить личное сообщение для Blackjack1616 Найти все сообщения от Blackjack1616
  № 3  
Ответить с цитированием
Blackjack1616

Регистрация: Mar 2010
Сообщений: 30
вы меня, не поняли. я сам способен писать код. но некоторых вещей не знаю как сделать. так как этим не занимался раньше.

но хорошо, я уточню вопрос.

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

вообще, dark256 - вы меня малость потрясли, первый раз вижу такое тут обращение. если тут спросить нельзя, то где(я знаю про гугл)? практически каждый ответ или вопрос по теме предполагает какой то код или логику, можно хотя бы логику подсказать?

Добавлено через 47 минут
ну и ладно

Старый 19.12.2010, 15:50
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 4  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Нужно получить ссылку на кнопку, с которой снять выделение и снять его (обратно тому, как Вы его нанесли - код смотреть лень )
Я бы по клике на кнопку снимал выделение со всех кнопок, а потом выделял бы нужную.

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

Регистрация: Mar 2010
Сообщений: 30
о! это идея, снять выделения сначала! спасибо. щас поковыряюсь.

Добавлено через 23 минуты
Psycho Tiger - Большое спасибо, все понял, и все получилось!! Лучей Добра Тебе))

Старый 19.12.2010, 17:38
dark256 вне форума Посмотреть профиль Отправить личное сообщение для dark256 Посетить домашнюю страницу dark256 Найти все сообщения от dark256
  № 6  
Ответить с цитированием
dark256
 
Аватар для dark256

блогер
Регистрация: Apr 2008
Адрес: SPb
Сообщений: 3,718
Записей в блоге: 5
Отправить сообщение для dark256 с помощью ICQ Отправить сообщение для dark256 с помощью Skype™
Цитата:
Сообщение от Blackjack1616 Посмотреть сообщение
вообще, dark256 - вы меня малость потрясли, первый раз вижу такое тут обращение. если тут спросить нельзя, то где(я знаю про гугл)? практически каждый ответ или вопрос по теме предполагает какой то код или логику, можно хотя бы логику подсказать?
Добавлено через 47 минут
ну и ладно
Так у вас логика же уже прозвучала - сделать выделение, убрать выделение.
Что тут еще можно подсказать? про ._visible - говорить я не посчитал корректным, а более как бы ничего и не предусматривалось в ответе
__________________
FLASHER.MAP SOUNDSTAGE / CS3 / AS2

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

Регистрация: Mar 2010
Сообщений: 30
_visible - не вариант. логика, да прозвучала, но мне необходимо была подсказка типа как дал Psycho Tiger.

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

Теги
кнопки , меню

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

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


 


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


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