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

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

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

Регистрация: Jan 2008
Сообщений: 23
Отправить сообщение для zinchencko с помощью ICQ Отправить сообщение для zinchencko с помощью Skype™
По умолчанию If - условие не выполняеться

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

Код:
package {

	import flash.display.Sprite;
	import flash.display.MovieClip;
	import flash.events.MouseEvent;

	public class Main extends Sprite {
		var inform:int = 1;

		public function Main() {

			add_btn.buttonMode = true;
			del_btn.buttonMode = true;
			add_btn.addEventListener(MouseEvent.CLICK, addFun);
			del_btn.addEventListener(MouseEvent.CLICK, delFun);

		}

		public function addFun(e:MouseEvent):void {
			if (inform == 1) {
				addfuninit();
			}

		}
		private function addfuninit():void {

			var inform:Number = 0;
			trace(inform);


		}
		private function delFun(e:MouseEvent):void {
			if (inform == 0) {
				var inform:int = 1;
				trace(inform);
			}
		}
	}
}

Старый 28.01.2008, 14:02
sqMax вне форума Посмотреть профиль Отправить личное сообщение для sqMax Найти все сообщения от sqMax
  № 2  
Ответить с цитированием
sqMax

Регистрация: Oct 2007
Адрес: Omsk
Сообщений: 10
А зачем ты в функциях локальные версии переменной создаешь???
Имхо, поэтому и не работает.
__________________
Пока!

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

Регистрация: Jan 2008
Сообщений: 23
Отправить сообщение для zinchencko с помощью ICQ Отправить сообщение для zinchencko с помощью Skype™
а куда надо писать локальные переменные тогда?

Старый 28.01.2008, 14:32
Ajshma вне форума Посмотреть профиль Отправить личное сообщение для Ajshma Найти все сообщения от Ajshma
  № 4  
Ответить с цитированием
Ajshma

Регистрация: Jan 2008
Сообщений: 23
Код:
if (inform == 1) {
				addfuninit();
			}
Ты вызываешь addfuninit, которая должна изменять глобальную переменную inform. Но inform из addfuninit недоступно для addFun, так как ты ее создаешь локальной только для addfuninit.
Вообщем так примерно:
Код:
package {

	import flash.display.Sprite;
	import flash.display.MovieClip;
	import flash.events.MouseEvent;

	public class Main extends Sprite {
		public var inform:int = 1;

		public function Main() {

			add_btn.buttonMode = true;
			del_btn.buttonMode = true;
			add_btn.addEventListener(MouseEvent.CLICK, addFun);
			del_btn.addEventListener(MouseEvent.CLICK, delFun);

		}

		public function addFun(e:MouseEvent):void {
                                      
			if (inform == 1) {
				addfuninit();
			}

		}
		private function addfuninit():void {

		            inform = 0;
			trace(inform);


		}
		private function delFun(e:MouseEvent):void {
			if (inform == 0) {
			inform = 1;
				trace(inform);
			}
		}
	}
}

Старый 28.01.2008, 17:35
zinchencko вне форума Посмотреть профиль Отправить личное сообщение для zinchencko Найти все сообщения от zinchencko
  № 5  
Ответить с цитированием
zinchencko

Регистрация: Jan 2008
Сообщений: 23
Отправить сообщение для zinchencko с помощью ICQ Отправить сообщение для zinchencko с помощью Skype™
все равно не работает.

Код:
package {

	import flash.display.Sprite;
	import flash.display.MovieClip;
	import flash.events.MouseEvent;

	public class Main extends Sprite {
		public var inform:int = 1;

		public function Main() {

			add_btn.buttonMode = true;
			del_btn.buttonMode = true;
			add_btn.addEventListener(MouseEvent.CLICK, addFun);
			del_btn.addEventListener(MouseEvent.CLICK, delFun);

		}

		public function addFun(e:MouseEvent):void {
			if (inform == 1) {
				var inform:int = 0;
				trace(inform);
			}

		}
		public function delFun(e:MouseEvent):void {
			if (inform == 0) {
				var inform:int = 1;
				trace(inform);
			}
		}
	}
}

Старый 28.01.2008, 21:39
Ajshma вне форума Посмотреть профиль Отправить личное сообщение для Ajshma Найти все сообщения от Ajshma
  № 6  
Ответить с цитированием
Ajshma

Регистрация: Jan 2008
Сообщений: 23
Ты издеваешься?
Внимательнее смотри, что я тебе написал.
Какого перепуга ты в каждом методе var inform:int = 1; пишешь?!
Ты ее определил уже в самом начале!
Далее надо писать - просто inform= 1;

Старый 28.01.2008, 21:48
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 7  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
что бы не было такого идиотизма надо всегда писать this.

Старый 28.01.2008, 22:28
zinchencko вне форума Посмотреть профиль Отправить личное сообщение для zinchencko Найти все сообщения от zinchencko
  № 8  
Ответить с цитированием
zinchencko

Регистрация: Jan 2008
Сообщений: 23
Отправить сообщение для zinchencko с помощью ICQ Отправить сообщение для zinchencko с помощью Skype™
извеняюсь за невнимательность...

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

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

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


 


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


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