WideStudio/MWT Logo
WideStudio/MWT
Programming Guide
WideStudio/MWT Index
Table of contents


객체의 속성지를 취득/ 설정하기에는

이벤트 프로시저에있어서, 객체의 속성에대하여 접근(access) 할수 있습니다. 다음의 API를 사용합니다.

접근(access) 함수 기능
mwt::WSCvariant mwt::WSCbase_getProperty() 속성의 취득
mwt::WSCvariant mwt::WSCbase_setProperty() 속성의 설정



속성지의 취득

객체의 속성을 취득하기에는,WSCbase 클래스의 멤버 함수인 getProperty() 의 사용합니다.

#----------------------------------------------------------
#Function for the event procedure
#----------------------------------------------------------
use mwt;

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

	# "x" (X좌표)속성의 값을 문자열로 취득
	$x = $object->getProperty("x"); 
	printf("x=%s\n",$x->getCharPtr()); # 문자열의 취득

	# "y" (Y좌표)속성의 값을 취득
	$y = $object->getProperty("y"); 
	printf("y=%d\n",$y->getLong()); # long 형의 값의 취득
}
1;

"x" 의 예로는 문자열로 취득해서 "y" 의 예로는 수치형으로 취득하고 있습니다. 관수 getProperty() 는 WSCvariant 형으로 값을 돌리지만 WSCvariant 형은 각각의 형으로 값을 취득해놓습니다.

mwt.WSCvariant 값취득관수 기능
mwt::WSCvarinat_getChar() char 형의 값의 취득
mwt::WSCvarinat_getUnsignedChar() unsigned char 형의 값의 취득
mwt::WSCvarinat_getShort() short 형의 값의 취득
mwt::WSCvarinat_getUnsignedShort() unsigned short 형의 값의 취득
mwt::WSCvarinat_getLong() long 형의 값의 취득
mwt::WSCvarinat_getUnsignedLong() unsigned long 형의 값의 취득
mwt::WSCvarinat_getInt() int 형의 값의 취득
mwt::WSCvarinat_getUnsignedInt() unsigned int 형의 값의 취득
mwt::WSCvarinat_getFloat() float 형의 값의 취득
mwt::WSCvarinat_getDouble() double 형의 값의 취득
mwt::WSCvarinat_getCharPtr() char* 형(문자열)의 값의 취득



속성지의 설정

객체의 속성을 설정하기에는 WSCbase 클래스의 멤버 함수인 setProperty() 를 이용합니다.

#----------------------------------------------------------
#Function for the event procedure
#----------------------------------------------------------
use mwt;

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

	# "x" (X좌표)속성의 문자열에의한 설졍
	$x="100";
	$object->setProperty("x",$x); 

	# "y" (Y좌표)속성의 설정
	$y=100; 
	$object->setProperty("y",$y); 
	return;
}
1;

"x" 의 예로는 문자열으로 값을 설정해서 "y" 의 예로는 정수형으로 값을 설정하고 있습니다.



속성지의 묘화에의 반영

보통, 이벤트 프로시저의 실행직후에 반영되나, 변경후, 속성의 값을 즉시 반영할 경우,update(),draw(),redraw() 를 호출합니다.

윈도우 시스템에 따라서는 ( 예컨데 X11 시스템의 경우등) 묘화 를 한때, 즉시는 윈도우 시스템에 반영안될 경우가 있습니다. 그럴 경우는 WSDappDev 클래스의 update() 를 호출해주십시오.

#----------------------------------------------------------
#Function for the event procedure
#----------------------------------------------------------
use mwt;

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

  $newvlab_001->getProperty("labelString","텍스트"); 
  $newvlab_001->update();    # 일찍이 객체을 갱신.
  mwt::WSGIappDev()->update(); # 윈도우 시스템에로 묘화요구를 번영시킴.

  $newvlab_002->getProperty("labelString","텍스트"); 
  $newvlab_002->update();    # 일찍이 객체을 갱신.
  mwt::WSGIappDev()->update(); # 윈도우 시스템에로 묘화요구를 번영시킴.
  return;
}
1;


Document Release 3.90 for WideStudio/MWT ver 3.90, Jul 2005


WideStudio/MWT documents index | Table of contents

Copyright(C) WideStudio/MWT Development Team, 1999-2005 Last modified: Jul 31, 2005