메뉴 형태로 포틀릿 화면을 띄우는 API이다.
Parameters | Type | Description |
---|---|---|
strPortletName | STRING | 포틀릿 이름 |
strScreenURL | STRING | 메뉴로 띄울 포틀릿 화면 경로 |
nXPagePos | long | 페이지 기준 X 좌표 |
nYPagePos | long | 페이지 기준 Y 좌표 |
bHorzCenter | BOOL | 화면상에 수평으로 가운데 위치 여부 |
bVertCenter | BOOL | 화면상에 수직으로 가운데 위치 여부 |
bModalStyle | BOOL | 모달 스타일로 표시 여부 |
nWidth | long | 화면상에 보여줄 너비 |
nHeight | long | 화면상에 보여줄 높이 |
extra_data | INSTANCE | 포틀릿 화면에 전달할 부가 데이터 |
Type | Description |
---|---|
BOOL | 포틀릿 화면을 로딩 시작을 정상적으로 수행했는지 여부(true, false) |
포틀릿을 로드한 부모 화면에 strPortletName 파라미터 값의 변수명으로 포틀릿 화면의 멤버가 지정되기 때문에, 일반 변수 형태의 문자열(숫자만으로 구성된 문자열은 유효하지 않음) 또는 공백 문자열로 설정해야 한다. (공백 문자열 설정시 엔진 내부에서 포틀릿 이름을 자동 생성한다.)
bHorzCenter, bVertCenter 파라미터를 각각 true 설정한 경우에는, nXPagePos, nYPagePos 파라미터 값은 무시된다.
bModalStyle 파라미터를 true로 설정한 경우, 모달 팝업을 띄운것과 같은 모양으로 표시가 되지만, 모달처럼 동작하지는 않는다.
extra_data 파라미터는 포틀릿 화면에게 전달될 데이터를 지정한다. 포틀릿 화면에서는 화면 객체(screen)의 getextradata 함수를 통해서 전달된 데이터를 받아올 수 있다. extra_data 파라미터 값으로는 일반 문자열 이외에도 객체 오브젝트도 지정이 가능하다.
loadportlet 함수를 통해 포틀릿 화면을 로드하는 경우, 함수 호출 이후에 바로 포틀릿 화면 로드가 완료되지 않는다. 포틀릿 화면 로드 완료시 화면의의 on_portletload 이벤트가 발생한다.
strPortletName 파라미터 값과 같은 값으로 기존 포틀릿이 로딩 진행 상태인 경우에는, 새로운 포틀릿을 로드하지 않고, false값을 리턴한다.
일반 화면을 띄울 경우에는, 변수 이름 중복, 데이터 셋 중독, 이벤트 핸들러 중독등 예기치 못한 오류가 발생할 수 있다.
function btnTest2_on_rclick()
{
var bVertCenter = true;
var bHorzCenter = true;
var bModalStyle = true;
var objExtraData = { data: "42"};
var nXPos = btnTest2.getwindowleft() + 30;
var nYPos = btnTest2.getwindowtop() + 20;
screen.loadportlet("TestMenu", "/PortletScreen", nXPos, nYPos, bHorzCenter, bVertCenter, bModalStyle, 138, 30, objExtraData);
}
function screen_on_portletload(portlet_inst, portlet_name)
{
screen.alert(portlet_inst.GetScreenUrl());
}