| WideStudio Programming Guide | WideStudio Index Table of contents

> ## 객체에 접근(access)하기에는

> 이벤트 프로시저에 있어서, 객체에 접근(access)하는것은,가장 기본적인 사항입니다.여러 경우에서의 , 객체에대한 접근(access) 방법을 설명합니다.
> - 프로시저 함수에 전해지는 인수에의한 접근(access)
>   프로시저 함수에 전해지는 인수에의한 접근(access)는, 이벤트 프로시저가 붙여있는 클라이언트 객체에 접근(access)할 경우에 사용합니다.
> - 객체 관리를 사용한 접근(access)
>   이벤트 프로시저가 붙여있는 클라이언트 객체이외의 다른 객체에 접근(access)할 경우에 사용합니다.
> - 외부 변수에위한 직접 접근(access)
>   이벤트 프로시저가 붙여있는 클라이언트 객체이외의 다른 객체에 접근(access)할 경우에 사용합니다. 이벤트 프로시저의 이식성이 저하합니다..

> ### 프로시저 함수에 전해지는 인수에의한 접근(access)

> 이벤트 프로시저에 전해지는 인수를 사용하면, 이벤트 프로시저가 붙여있는 클라이언트 객체에 접근(access) 할수 있습니다.

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     use mpfc;

>     sub event_procedure {
>       my ($object) = @_;
>       #객체에 접근
>       $object->setProperty("labelString","HELLO WORLD");
>     }
>     1;

> object 변수가 그 클라이언트 객체를 격납할 변수입니다. 이 객체에 대해서 조작할 경우,이 object 에대해서 사용할 API 를 불러놓습니다.

> ### 객체 관리로 사용한 접근(access)

> 객체 관리 인스턴스( 적재 모듈(module)당, 하나가 존재)에대해서 요구하면, 접근(access)하고싶은 객체를 취득 할수 있습니다. 외부 변수 접근(access)(하기 참조)의 경우와 딸리, 컴파일시의 심볼의 링크를 따르지안습니다. 그러기에, 화면의 구성에 의존안하는 유난한 프로그램을 작성할수 있습니다.

> 객체 관리 클래스 | 인스턴스 취득 함수
> mpfc::WSCbaseList | mpfc::WSCbaseList mpfc::WSGIappObjectList()

> 접근(access)할 객체의 취득은, 다음과 같이 하겠습니다.

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     use mpfc;

>     sub event_procedure {
>       my ($object) = @_;

>       # 객체관리에의한 인스턴스의 취득(첫째)
>       $obj = mpfc::WSGIappObjectList()->getInstance(
>                    "WSCvlabel",       # 라벨클래스
>                    "newvlab_001");    # newvlab_001 라는 명칭

>       # 취득된 라벨에대한 접근
>       $obj->setProperty("labelString","HELLO WORLD");

>       # 객체관리에의한 인스턴스의 취득(둘째)
>       $obj2 = mpfc::WSGIappObjectList()->getInstance(
>                    "WSCbase",      # 어느 클래스인가를 특정안함
>                    "newvlab_002"); # newvlab_002 란 명칭

>       # 취득된 라벨에대한 접근
>       $obj2->setProperty("labelString","HELLO WORLD");
>     }
>     1;

> obj 혹은 obj2 가 접근(access)할 객체입니다. 클래스명칭과 객체명칭을 인수에 합니다. 혹시 클래스명을 특정안할 경우에는, "WSCbase" 를 전하싶시오. 이 경우는 모든 객체가 검색대상으로 됩니다.

> ### 외부 변수에의한 직접 접근(access)

> 객체를 외부 변수 참조정의(define)하면, 외부 변수로서 접근(access)할수있습니다. 외부 변수정의(define)는, 응용프로그램 빌더 사용 설명서의 [ 외부 변수로서 가능한 객체로 하기에는]의 절을 참조해 주세요.

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     user mpfc;

>     sub event_procedure {
>       my ($object) = @_;
>       # newvlab_001 에 대해서 직접 접근
>       $newvlab_001->setProperty("labelString","HELLO WORLD");
>     }
>     1;

Document Release 3.70 for WideStudio ver 3.70, May 2004

WideStudio documents index | Table of contents

Copyright(C) WideStudio Development Team, 1999-2004 | Last modified: May 25, 2004