그리드 아이템 병합 가이드
그리드 데이터행 아이템 병합에 대한 예시 화면이다.
그리드 use_selectblock 속성을 true로 설정하여 사용자가 마우스로 블럭 선택 기능을 제공합니다.
그리드 on_selectblock 이벤트를 이용하여 블럭 선택한 아이템에 대한 통계 데이터를 표시한다.
블럭 선택된 아이템에 대한 컨텍스트 메뉴에 “병합” 및 “병합해제” 메뉴를 제공한다.
아이템 병합시 병합된 아이템들의 값은 병합 시작 아이템의 값으로 변경된다.
관련 속성으로 use_selectblock, show_selectblockstat, item_merge가 있다.
관련 API로 setitemmergerange, releaseitemmerge, isitemmerge, getitemmergerange가 있다.
관련 이벤트로 on_selectblock가 있다.
예시
그리드를 마우스로 드래그 후, 컨텍스트 메뉴를 통해 병합하세요.
템플릿 위치: /HTML5/COMPONENT/GRID/grid_merge_item
템플릿 파일
화면 스크립트
// 그리드 "on_selectblock" 이벤트 function grdMerge_on_selectblock(objInst, nSelectStat, nStartRow, nStartColumn, nEndRow, nEndColumn, nSumValue, nAvgValue, nCount, nMinValue, nMaxValue) { // 그리드 블럭 선택 통계 정보 표시 this.fldSum.settext(nSumValue); this.fldAvg.settext(nAvgValue); this.fldCount.settext(nCount); this.fldMin.settext(nMinValue); this.fldMax.settext(nMaxValue); } // "setitemmergerange" 버튼 이벤트 function btn_setitemmergerange_on_click(objInst) { var ret; // 아이템 병합 처리 ret = this.grdMerge.setitemmergerange(this.fldStartRow.gettext(), this.fldStartCol.gettext(), this.fldEndRow.gettext(), this.fldEndCol.gettext()); factory.consoleprint("setitemmergerange return = " + ret); } // "releaseitemmerge" 버튼 이벤트 function btn_releaseitemmerge_on_click(objInst) { var ret; // 아이템 병합 해제 처리 ret = this.grdMerge.releaseitemmerge(this.fldStartRow.gettext(), this.fldStartCol.gettext(), this.fldEndRow.gettext(), this.fldEndCol.gettext()); factory.consoleprint("releaseitemmerge return = " + ret); } // "isitemmerge" 버튼 이벤트 function btn_isitemmerge_on_click(objInst) { var is_merge; // 아이템이 병합된 아이템인지 구함 is_merge = this.grdMerge.isitemmerge(this.grdMerge.getselectrow(), this.grdMerge.getselectcolumn()); if (is_merge) { screen.alert("선택한 아이템은 병합된 아이템 입니다."); } else { screen.alert("선택한 아이템은 병합된 아이템이 아닙니다."); } } // "getitemmergerange" 버튼 이벤트 function btn_getitemmergerange_on_click(objInst) { var merge_range; merge_range = this.grdMerge.getitemmergerange(this.grdMerge.getselectrow(), this.grdMerge.getselectcolumn()); if (merge_range) { screen.alert("선택한 아이템 병합정보: " + merge_range.join(",")); } else { screen.alert("선택한 아이템은 병합된 아아템이 아닙니다."); } }