چرا این کار نمیدههههههههه ؟

با سلام
[LTR]_root.onkeyup=function() {trace("ok")}[/LTR]
دوستان من نمی دونم این دستور چه اشکالی داره کا در فلاش کا نمیده من می خواهم با فشردن یک کلید از صفحه کلید پیغامی ظاهر شه اگه کد بهتری سراغ دارین رو کنید؟؟؟!!!!:eek: :cry:
 

م

Member
اینو امتحان کن
کد:
myobj = new Object();
myobj.onKeyUp = function() {
	trace("ok");
};
Key.addListener(myobj);
 

م

Member
یعنی چی دوست گرامی منظورت چیه "دوست عزیز درست درست کارتو میگم ها"
بگو یکم هم ما از سخنان گهربارتون بهره مند شیم
کد اولیتم درست بود فقط اینو کم داشت
کد:
Key.addListener(_root);
 
آخرین ویرایش:
دوست من بد برداشت نکن منظورم از کارتو همون کار شما بود یعنی خیلی دمت گرم خوب بعاز یه گشتی تو help دوباره همون کد شما را جستم اما همین قدر که وقت خودتون رو برای ما گذاشتید برای ما خیلی ارزش داره باتشکر مجدد از شما:)
 
راستی یه سوال داشتم اگه بخواهیم یه کد بنویسیم که وقتی کلید های left و up را باهم فشرد کاربر عمل کنه چه کدی باید بنویسیم خودم با gettimer() یه چیزایی نوشتم اما دوست دارم شما اگه راه حل بهتری می دونین برام بنویسین خیلی ممنون
 

م

Member
ببین این به کارت میاد
کد:
myobj = new Object();
end = true;
myobj.onKeyDown = function() {
	if ((Key.isDown(Key.UP)) and (Key.isDown(Key.LEFT)) and (end == true)) {
		trace("ok");
		end = false;
	}
};
myobj.onKeyUp = function() {
	end = true;
};
Key.addListener(myobj);
اینم یکی دیگه
کد:
myobj = new Object();
myobj.onKeyDown = function() {
	if ((Key.isDown(Key.UP)) and (Key.isDown(Key.LEFT))) {
		trace("ok");
	}
};
Key.addListener(myobj);
فرقشون اینه که اولی فقط یکبار اجرا میشه ولی دومی تا وقتی که کلید رو ول نکرده هی اجرا میشه
 
آخرین ویرایش:

م

Member
یکی دیگه
کد:
myobj = new Object();
myobj.onKeyDown = function() {
	if ((Key.isDown(Key.UP)) and (Key.isDown(Key.LEFT))) {
		Down = true;
	} else {
		Down = false;
	}
};
myobj.onKeyUp = function() {
	if (Down == true) {
		trace("ok");
	}
};
Key.addListener(myobj);
فرقش با دو تای قبلی اینه که وقتی شخص کلید رو ول می کنه اجرا میشه
ولی دو تای قبلی وقتی اجرا میشن که کلید گرفته شده
 
دوست من خیلی از کارت خوشم اومد و دوست داشتم که کدی که خودم هم نوشته بودم ببینی کدی که من نوشته بودم اینه:
_root.onEnterFrame = function () {
_root.tg = (getTimer()/1000)+"s"
}

var myListener:Object = new Object();
myListener.onKeyDown = function() {
A = Key.getCode();
if (A == 38 or A == 40 or A == 37 or A == 39 or A == 65 or A == 83 or A == 68 or A == 16) {
if (A == 38) {
up();
t1 = getTimer();
} else if (A == 40) {
down();
t3 = getTimer();
} else if (A == 37) {
left();
t2 = getTimer();
if (Math.abs(t2-t1)<250) {
upl();
} else if (Math.abs(t2-t3)<250) {
Downl();

}
}
if (A == 39) {
right();
t2 = getTimer();
if (Math.abs(t2-t1)<250) {
upr();
}
if (Math.abs(t2-t3)<250) {
Downr();
}
} else if (A == 65) {
t2 = getTimer();
if (ts==1) {
AA();
}else{
AS();
}
} else if (A == 83) {
t2 = getTimer();
if (ts==1) {
S();
}else{
SS();
}
} else if (A == 68) {
t2 = getTimer();
if (ts==1) {
D();
}else{
DS();
}
} else if (A == 16) {
trace("SHIFT");
ts = 0;
}
}
};
myListener.onKeyUp = function() {

ts = 1;

};
Key.addListener(myListener);
function up() {
trace("UP");

}
function down() {
trace("down");
}
function left() {
trace("left");

}
function right() {
trace("right");

}
function upr() {
trace("UP + right");
}
function upl() {
trace("UP + left");
}
function Downr() {
trace("down + right");
}
function Downl() {
trace("down + left");
}
function AA() {
trace("A");
}
function AS() {
trace("A + Shift");
}
function S() {
trace("S");
}
function SS() {
trace("S + SHIFT");
}
function D() {
trace("D");
}
function DS() {
trace("D + SHIFT");
}
 

م

Member
عاليه فقط سرعت کارو پایین میاره
حجمش زیاده
وقتی کلید بالا و چپ با هم گرفته می شه یک دفعه دو تاشو نشون می ده بعدش فقط یکیشون رو نشون می ده
 
آخرین ویرایش:
متشکرم ز نقد شما

دوست من کدهای شما و کد ها خودم رو با هم امیختم و یک کد درست در اومد اگه کامل شد براتون میزارم بازم نظر بدبد ممنون
 
بالا