WideStudio Programming Guide

| WideStudio Programming Guide | WideStudio Index Table of contents

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

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

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

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

>     def event_procedure(object)
>       # 객체에 접근(access)
>       object.setProperty("labelString","HELLO WORLD")
>     end

> object 변수가 그 클라이언트 객체를 격납하는 변수입니다. 그 객체를 조작하는 경우, 그 object에 대해서 사용하고 싶은 API을 호출합니다.

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

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

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

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

>     def event_procedure(object)

>       # 객체 관리에의한 인스탠스 취득 (1)
>       obj = Mpfc::WSGIappObjectList().getInstance(
>                    "WSCvlabel",       # 라벨 클래스
>                    "newvlab_001")    # newvlab_001 란 명칭

>       # 취득한 라벨에 접근
>       obj.setProperty("labelString","HELLO WORLD")

>       # 객체 관리에의한 인스탠스 취득 (2)
>       obj2 = Mpfc::WSGIappObjectList().getInstance(
>                    "WSCbase",      # 어느 클래스인가를 특정하지 안함.
>                    "newvlab_002") # newvlab_002란 명칭

>       # 취득한 라벨에 접근
>       obj2.setProperty("labelString","HELLO WORLD")
>     end

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

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

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

>     ...
>     def event_procedure(object)
>       # newvlab_001를 직접 접근
>       $newvlab_001.setProperty("labelString","HELLO WORLD")
>     end

Document Release 3.70 for WideStudio ver 3.70, Feb 2004

WideStudio documents index | Table of contents

Copyright(C) T. Hirabayashi, 2000-2004 | Last modified: Feb 25, 2004