이 코드가 actionscript2.0에서 작동하지 않는 이유를 알려주세요 ^^
난길
onClipEvent(keyDown){
if(Key.isDown(ord(F)) == true || Key.isDown(ord(f)) == true ){
this._visible = false;
}
if(Key.isDown(ord(T)) == true || Key.isDown(ord(t)) == true ){
this._visible = true;
}
}
책 보고 공부하던 중..
이 코드가 actionscript 1.0에서는 작동하는데
2.0에서는 작동하지 않는 것을 알게 되었습니다.
왜 일까요? ㅠ_ㅠ
-
가이
수다님이 말씀하신대로 number를 붙였더니.. 되었습니다.. 그런데 trace(isnan(ord(\f\))) 을 해보니 false가 나오는군요.. 그렇다면.. ord(\f\)는 숫자를 반환한다는 소리인데.. 모순인가요? ^^;;
-
어른처럼
머 아니라믄..
if(Key.isDown(Number(ord(\F\))) == true || Key.isDown(Number(ord(\f\))) == true ){
하시는 방법도. -
월식
ord함수가 선언이 숫자로 리턴하는게 맞나 확인해보세요 문자열일지도 모릅니다.
function ord(varChar):Number { return ~~~~; } ? -
다올
ord()함수를 빼고 코드값을 넣었더니 동작을 하네요..
그런데.. trace(ord(\f\))하면 코드값은 제대로 나오네요..
isDown 이 ord()에서 반환하는 값을 인식하지 못하는 걸까요?? -
키클
에러메시지는..
Type mismatch.
\tif(Key.isDown(ord(\F\)) == true || Key.isDown(ord(\f\)) == true ){
이렇구요..
ord()함수를 빼도 같은 에러메시지가 나오네요..;;
리스너를 이용해서 함해볼께욥..;; 감사함당 ^^ -
재마루
as2 에선 이벤트 리스너를 쓰는게 좋죠
var myListener:Object = new Object();
myListener.onKeyDown = function () {
if(Key.isDown(70)){
\t\tmc._visible = false;
\t}
\tif(Key.isDown(84)){
\t\tmc._visible = true;
\t}
}
Key.addListener(myListener); -
싴흐한세여니
onClipEvent(keyDown){
\tif(Key.isDown(70)){
\t\tthis._visible = false;
\t}
\tif(Key.isDown(84)){
\t\tthis._visible = true;
\t}
}
이렇게 해보세요.
특별히 코드에 이상이 있는것 같진 않은데, ord() 함수가 문제가 되는건 아닌지??? -
싸리
키이벤트는 잘 모르겠지만 2.0에서는 Key.getASCii 로 하는것 같던뎁;;