Flash Work Book UserPreferences
 
Help Info Print View Search Diffs Edit
 인덱스   찾기   Freeboard   Subjectless   Images   최근글 

오후 9:03 2004-12-25
뭐가 이렇게 복잡하냐..
// 여기서부터 필요한 코드 
var kioskdata = _global.kioskdata; 
var wsc = kioskdata.wsc; 
 
// 테스트 코드 
kioskdata.GetServiceStatus(); 
kioskdata.WebServiceResultCallBack(                           
        function() 
        { 
                switch(kioskdata.GetWebServiceCallStatus()) 
                { 
                        // 아직 진행중 
                        case 'Progress': 
                                break; 
                        // 웹서비스 응답 없음 
                        case 'ConnectionFail': 
                                trace('server down'); 
                                break; 
                        // 결과 받음 
                        case 'Stop': 
                                trace('results:' + kioskdata.WebServiceResults); 
                                break; 
                } 
        } 
); 

값을 가져오는 코드는 위처럼 줄여놓긴 했는데, 덕분에 처리하는 코드가 열라 많아졌다.

// 웹 서비스 관련 인자 
public var wsc; 
private var wsc_callback_interval; 
public var WebServiceCallStatus:String = 'Stop'; 
public var WebServiceResults:String = ''; 
 
// wsc(웹서비스커넥터)의 status 이벤트에 호출됨 
public function WebServiceOnStatus(code) 
{ 
        // 연결 자체가 불가능! 
        if(code =='WebServiceFault') 
        { 
                WebServiceCallStatus = 'ConnectionFail'; 
        } 
        trace('WebServiceOnStatus:' + code); 
} 
 
// wsc의 result 이벤트에 호출됨 
public function WebServiceOnResult(results) 
{ 
        WebServiceCallStatus = 'Stop'; 
        WebServiceResults = results; 
        trace('WebServiceOnResult:' + results); 
} 
 
// 웹서비스의 현재 상태를 체크 
// 호출이 처리되고 있는 경우 Progress이고, 
// 그 이외의 경우엔 wsc_callback_interval을 클리어해서 호출을 멈춘다. 
public function GetWebServiceCallStatus() 
{ 
        switch(WebServiceCallStatus) 
        { 
                // 웹서비스 응답 없음 
                case 'ConnectionFail': 
                // 결과 받음 
                case 'Stop': 
                        clearInterval(wsc_callback_interval); 
                        wsc_callback_interval = undefined; 
                        break; 
        } 
        return WebServiceCallStatus; 
} 
 
// 콜백함수 실행 대리함수 
public function WebServiceResultCallBack(callbackfn) 
{ 
        if(undefined==wsc_callback_interval) 
                wsc_callback_interval = setInterval(callbackfn, 100); 
} 
 
// 웹 서비스 호출 
private function CallWebService(op, param) 
{ 
        if(WebServiceCallStatus == 'Progress') 
        { 
                trace('CallWebService fail - it is progress'); 
                return; 
        } 
        WebServiceCallStatus = 'Progress'; 
        wsc.operation = op; 
        wsc.params = param; 
        wsc.trigger(); 
} 

이거 난리도 아니구만..

오후 4:21 2004-12-24
_root.onLoad(); 안되는 현상 인지할 것
되도록이면 onClipEvent
?()를 사용하고, 콜백 형태로 등록하는 _root.onLoad = function () {...} 형태의 함수는 사용을 자제.
디버그 모드(ctrl + shift + enter)에서 작동하는지 확인하는 습관을 들이자.

오후 3:31 2004-11-11
Macromedia - Flash Flash MX 2004 Documentation
http://www.macromedia.com/support/documentation/en/flash/

오후 5:39 2004-11-08
C#어플리케이션에서플래시오브젝트사용하기 UsingFlashObjectInC#Application

WorkBook 프로그래밍분류


PythonPowered EditText of this page (last modified 2004-12-25 21:42:09)
FindPage by browsing, searching, or an index
Or try one of these actions: DeletePage, DeleteUploadedFile, LikePages, SpellCheck, UploadFile