flash 에서 오른쪽 마우스를 사용 하기 위해서
ASnative 를 이용해서 dispatch 한 이벤트를 실행합니다.
버튼, 무비클립 클릭 용으로 만들었습니다.
ASnative 를 이용해서 dispatch 한 이벤트를 실행합니다.
버튼, 무비클립 클릭 용으로 만들었습니다.
swf 파일을 html에서 embead 할 때 menu=false로 지정 합니다.
그래야 flash 상에서 메뉴 버튼이 나타나지 않습니다.
flash의 1번째 프레임에 다음과 같이 선언 합니다.
소스는 actionscript 를 조금만 할 줄 알면 누구나 이해 할 수 있음으로,, 설명은 생략 ...
var EventStack:Array =new Array();
flash의 1번째 프레임에 다음과 같이 선언 합니다.
소스는 actionscript 를 조금만 할 줄 알면 누구나 이해 할 수 있음으로,, 설명은 생략 ...
var EventStack:Array =new Array();
this.onEnterFrame = function() {
//dispitchEvent by MouseRightBtnClick
if (ASnative(800, 2)(2)) {
//객체 찾기
var temp:Array=find_object(this._currentframe);
for(i:Number=0; i<temp.length; i++){
if(is_mouseOver(this[temp[i].eventTarget])==true){
//method call;
var method:String = temp[i].tirggerMethod;
this[method]();
removeEventStack(temp[i].frameNo,temp[i].eventTarget,temp[i].tirggerMethod);
}//end if
}//end for
}//end if
}//end EnterFrame
//dispitchEvent by MouseRightBtnClick
if (ASnative(800, 2)(2)) {
//객체 찾기
var temp:Array=find_object(this._currentframe);
for(i:Number=0; i<temp.length; i++){
if(is_mouseOver(this[temp[i].eventTarget])==true){
//method call;
var method:String = temp[i].tirggerMethod;
this[method]();
removeEventStack(temp[i].frameNo,temp[i].eventTarget,temp[i].tirggerMethod);
}//end if
}//end for
}//end if
}//end EnterFrame
//등록
function regist(frameNo:String,eventTarget:String,tirggerMethod:String):Void{
var defaultObj:Object = new Object();
defaultObj.frameNo=frameNo;
defaultObj.eventTarget=eventTarget;
defaultObj.tirggerMethod =tirggerMethod;
EventStack.push(defaultObj);
}
// is mouseOver
function is_mouseOver(o:Object){
var is:Boolean=false;
if(o.hitTest(_root._xmouse,_root._ymouse, false)){
is=true;
}
return is;
}
function find_object(frameNo:String):Array{
var objArray:Array = new Array();
for(i:Number=0; i<EventStack.length; i++){
if(EventStack[i].frameNo==frameNo){
objArray.push(EventStack[i]);
}
}
return objArray;
}
var objArray:Array = new Array();
for(i:Number=0; i<EventStack.length; i++){
if(EventStack[i].frameNo==frameNo){
objArray.push(EventStack[i]);
}
}
return objArray;
}
function removeEventStack(frameNo:String,eventTarget:String,tirggerMethod:String){
for(i:Number =0; i<EventStack.length; i++){
if(EventStack[i].frameNo==frameNo){
if(EventStack[i].eventTarget==eventTarget){
if(EventStack[i].tirggerMethod==tirggerMethod){
array_slice(EventStack,i);
break;
}
}
}
}
}
for(i:Number =0; i<EventStack.length; i++){
if(EventStack[i].frameNo==frameNo){
if(EventStack[i].eventTarget==eventTarget){
if(EventStack[i].tirggerMethod==tirggerMethod){
array_slice(EventStack,i);
break;
}
}
}
}
}
function array_slice(target_array:Array, target_num:Number){
for(var i=0; i<target_array.length; i++){
if(i==target_num){
target_array.splice(i,1);
}
}
}
마우스 오른쪽 버튼을 클릭 할 위치에
stop();
//_currentframe 현제 프레임 번호 , bg1 <-- 이벤트가 발생할 객체(버튼, 무비클립), fun1 <-- 이벤트가 발생 할 후 호출될 함수 명 함수 명은 수정 될 수 있으나 해당 함수를 반드시 구현 해줘야 한다.
regist(_currentframe,"bg1","fun1");
//callback function
function fun1(){
//마우스 오른쪽 버튼 클릭시 실행될 내용
trace("mouseclick");
}
for(var i=0; i<target_array.length; i++){
if(i==target_num){
target_array.splice(i,1);
}
}
}
마우스 오른쪽 버튼을 클릭 할 위치에
stop();
//_currentframe 현제 프레임 번호 , bg1 <-- 이벤트가 발생할 객체(버튼, 무비클립), fun1 <-- 이벤트가 발생 할 후 호출될 함수 명 함수 명은 수정 될 수 있으나 해당 함수를 반드시 구현 해줘야 한다.
regist(_currentframe,"bg1","fun1");
//callback function
function fun1(){
//마우스 오른쪽 버튼 클릭시 실행될 내용
trace("mouseclick");
}
댓글 3개
HoneyMaro
13년 전
오오 대박대박
visualp
13년 전
그러나 이방법도 완벽한 해결 방법은 아님을 참고 해주세요;
13년 전
감사합니다~~
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 4730 |
제너레이션
|
13년 전 | 997 | |
| 4729 | 13년 전 | 935 | ||
| 4728 | 13년 전 | 693 | ||
| 4727 | 13년 전 | 1242 | ||
| 4726 | 13년 전 | 844 | ||
| 4725 | 13년 전 | 1680 | ||
| 4724 | 13년 전 | 1013 | ||
| 4723 | 13년 전 | 2686 | ||
| 4722 | 13년 전 | 551 | ||
| 4721 |
ECEditor
|
13년 전 | 2231 | |
| 4720 | 13년 전 | 2608 | ||
| 4719 | 13년 전 | 4370 | ||
| 4718 | 13년 전 | 940 | ||
| 4717 | 13년 전 | 1167 | ||
| 4716 | 13년 전 | 1344 | ||
| 4715 |
한번잘해보자
|
13년 전 | 1164 | |
| 4714 | 13년 전 | 1162 | ||
| 4713 | 13년 전 | 2818 | ||
| 4712 | 13년 전 | 1243 | ||
| 4711 |
김준수사랑
|
13년 전 | 1007 | |
| 4710 |
한번잘해보자
|
13년 전 | 1134 | |
| 4709 | 13년 전 | 1131 | ||
| 4708 | 13년 전 | 808 | ||
| 4707 | 13년 전 | 1697 | ||
| 4706 |
프로프리랜서
|
13년 전 | 2079 | |
| 4705 |
프로프리랜서
|
13년 전 | 1369 | |
| 4704 | 13년 전 | 964 | ||
| 4703 |
프로프리랜서
|
13년 전 | 929 | |
| 4702 | 13년 전 | 824 | ||
| 4701 | 13년 전 | 1566 | ||
| 4700 | 13년 전 | 2587 | ||
| 4699 | 13년 전 | 1293 | ||
| 4698 |
|
13년 전 | 1592 | |
| 4697 |
|
13년 전 | 1113 | |
| 4696 |
|
13년 전 | 1130 | |
| 4695 |
|
13년 전 | 1337 | |
| 4694 |
|
13년 전 | 862 | |
| 4693 |
|
13년 전 | 850 | |
| 4692 |
|
13년 전 | 857 | |
| 4691 |
|
13년 전 | 1185 | |
| 4690 |
|
13년 전 | 1268 | |
| 4689 |
|
13년 전 | 1012 | |
| 4688 |
|
13년 전 | 779 | |
| 4687 |
|
13년 전 | 1055 | |
| 4686 |
|
13년 전 | 1007 | |
| 4685 |
|
13년 전 | 935 | |
| 4684 |
|
13년 전 | 1037 | |
| 4683 |
|
13년 전 | 928 | |
| 4682 |
|
13년 전 | 1239 | |
| 4681 |
|
13년 전 | 1015 | |
| 4680 |
|
13년 전 | 1136 | |
| 4679 |
|
13년 전 | 1647 | |
| 4678 |
|
13년 전 | 576 | |
| 4677 | 13년 전 | 2910 | ||
| 4676 |
복이219
|
13년 전 | 613 | |
| 4675 | 13년 전 | 809 | ||
| 4674 | 13년 전 | 604 | ||
| 4673 | 13년 전 | 984 | ||
| 4672 | 13년 전 | 926 | ||
| 4671 | 13년 전 | 1194 | ||
| 4670 | 13년 전 | 706 | ||
| 4669 | 13년 전 | 1776 | ||
| 4668 | 13년 전 | 1417 | ||
| 4667 |
너는나의봄이다
|
13년 전 | 1015 | |
| 4666 | 13년 전 | 6686 | ||
| 4665 | 13년 전 | 601 | ||
| 4664 | 13년 전 | 988 | ||
| 4663 | 13년 전 | 835 | ||
| 4662 | 13년 전 | 960 | ||
| 4661 | 13년 전 | 1234 | ||
| 4660 | 13년 전 | 831 | ||
| 4659 | 13년 전 | 1095 | ||
| 4658 |
소나무닷컴
|
13년 전 | 684 | |
| 4657 | 13년 전 | 701 | ||
| 4656 |
|
13년 전 | 1231 | |
| 4655 | 13년 전 | 3086 | ||
| 4654 | 13년 전 | 667 | ||
| 4653 | 13년 전 | 2095 | ||
| 4652 | 13년 전 | 865 | ||
| 4651 | 13년 전 | 768 | ||
| 4650 | 13년 전 | 1653 | ||
| 4649 | 13년 전 | 1580 | ||
| 4648 | 13년 전 | 600 | ||
| 4647 | 13년 전 | 1495 | ||
| 4646 | 13년 전 | 1927 | ||
| 4645 | 13년 전 | 1326 | ||
| 4644 | 13년 전 | 586 | ||
| 4643 | 13년 전 | 2002 | ||
| 4642 | 13년 전 | 800 | ||
| 4641 |
|
13년 전 | 586 | |
| 4640 | 13년 전 | 555 | ||
| 4639 |
|
13년 전 | 1287 | |
| 4638 |
|
13년 전 | 1662 | |
| 4637 |
|
13년 전 | 1126 | |
| 4636 | 13년 전 | 613 | ||
| 4635 | 13년 전 | 750 | ||
| 4634 | 13년 전 | 1251 | ||
| 4633 | 13년 전 | 1198 | ||
| 4632 |
|
13년 전 | 534 | |
| 4631 | 13년 전 | 3338 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기