어느 가을날의 전환점

MiPlatform|그리드 2개 스크롤바 같이 움직이게 하는 방법 본문

Software/MiPlatform

MiPlatform|그리드 2개 스크롤바 같이 움직이게 하는 방법

어느가을빛 2010. 12. 10. 12:24
그리드1: grdTH_PMMAST
그리드2: grdTH_PMMAST_SUM
var sFOCUS_GRID_ID = '';   // 현재 포커스가 있는 그리드 ID를 가짊. (무한 루프 방지용)

/*----------------------+
|  수평 스크롤 이동시   |
+----------------------*/
function grdTH_PMMAST_OnHScroll(obj,strType,nPos) {
if( obj == sFOCUS_GRID_ID ) grdTH_PMMAST_SUM.HScrollPos = nPos;
}
function grdTH_PMMAST_SUM_OnHScroll(obj,strType,nPos) {
if( obj == sFOCUS_GRID_ID ) grdTH_PMMAST.HScrollPos = nPos;
}

/*-----------------------------------+
|  좌우 버튼으로 수평 스크롤 이동시  |
+-----------------------------------*/
function grdTH_PMMAST_OnKeyDown(obj,nChar,bShift,bCtrl,bAlt,nLLParam,nHLParam) {
sFOCUS_GRID_ID = obj;
if (nChar == '37') {
grdTH_PMMAST_SUM.HScrollPos = TONUMBER(grdTH_PMMAST.HScrollPos) - 1;
} else if (nChar == '39') {
grdTH_PMMAST_SUM.HScrollPos = TONUMBER(grdTH_PMMAST.HScrollPos) + 1;
} else {
grdTH_PMMAST_SUM.HScrollPos = grdTH_PMMAST.HScrollPos;
}
}
function grdTH_PMMAST_SUM_OnKeyDown(obj,nChar,bShift,bCtrl,bAlt,nLLParam,nHLParam) {
sFOCUS_GRID_ID = obj;
if (nChar == '37') {
grdTH_PMMAST.HScrollPos = TONUMBER(grdTH_PMMAST_SUM.HScrollPos) - 1;
} else if (nChar == '39') {
grdTH_PMMAST.HScrollPos = TONUMBER(grdTH_PMMAST_SUM.HScrollPos) + 1;
} else {
grdTH_PMMAST.HScrollPos = grdTH_PMMAST_SUM.HScrollPos;
}
}

/*-------------------------+
|  그리드에 마우스 이동시  |
+-------------------------*/
function grdTH_PMMAST_OnMouseOver(obj,nPosX,nPosY,nRow,nCell,nPivotIndex){
sFOCUS_GRID_ID = grdTH_PMMAST;
}
function grdTH_PMMAST_SUM_OnMouseOver(obj,nPosX,nPosY,nRow,nCell,nPivotIndex){
sFOCUS_GRID_ID = grdTH_PMMAST_SUM;
}
Comments