SMART datagrid v1.4 > Examples

Back  Forward

Column Popup Menu  Example

DataColumn.popupMenu 속성에 GridBase.registerPopupMenu로 등록한 팝업메뉴 이름을 지정하면, 마우스가 데이터셀 위에 있을 때 나타나는 메뉴 버튼을 클릭하면 등록된 팝업 메뉴가 표시된다. 컬럼 팝업 메뉴를 표시하려면 아래 코드처럼 먼저 메뉴를 등록해야 한다. 

데이터행에 따라 별도의 메뉴를 표시하려면 popupMenuCallback을 이용한다. "통화" 컬럼 설정을 참조한다. 

Code -1
    grid.registerPopupMenu('menu01', [{
        label: 'menu1',
        callback: menuCallback
    }, {
        label: 'menu2',
    },  ...
    ]);

메뉴를 정의하는 방법은 메뉴 개요 도움말을 참조한다. 

Grid - 1
rows

위 그리드에서 "국가", "이율" 컬럼에 팝업 메뉴를 지정했다. 먼저, DataColumn.button 속성을 "popup"으로 지정해야 한다. 그리고, popupMenu에 위에서 등록한 팝업메뉴 이름을 지정한다. 

팝업 메뉴가 지정되면 그 컬럼의 데이터셀에 버튼이 표시되는데, buttonVisibility 속성에 지정한다. "국가" 컬럼은 ButtonVisibility.ALWAYS으로, "이율" 컬럼은 기본값인 DEFAULT으로 지정했다. 

"이율" 컬럼의 buttonVisibility를 변경해 본다. 

Button Visibility:

visible이면 포커스셀에만 버튼을 표시한다. 

Code -2
    grid.setColumns([{
        ...
    }, {
        "name": "Country",
        "fieldName": "country",
        "button": "popup",
        "popupMenu": "menu01",
        "buttonVisibility": DataLudi.ButtonVisibility.ALWAYS
    }, {
        "name": "Country",
        "fieldName": "country",
        "button": "popup",
        "popupMenu": "menu02"
    },  ...
    ]);

소스보기 JSP 

See Also
메뉴 개요
GridBase.registerPopupMenu
GridBase.unregisterPopupMenu
GridBase.focusedIndex
DataColumn.popupMenu
DataColumn.popupMenuCallback
DataColumn.button
DataColumn.buttonVisibility
Examples
ContextMenu