WEB/Electron

[Electron] 특정 위치에서만 메뉴(context-menu) 보이도록 설정하는 방법

S0PH1A 2019. 3. 21. 12:20
반응형

[electron] 특정 위치에서만 메뉴(context-menu) 보이도록 설정하는 방법




예) 아이디(id)값이 imageDiv 인 곳에서만 마우스 오른쪽 클릭 메뉴가 보이도록 설정하기

const { Menu, MenuItem } = remote;

// 메뉴 생성
const menu = new Menu();
menu.append(new MenuItem({ 
    label: 'Download', 
    click() { 
        // 메뉴 선택에 따른 동작(이벤트) 정의
        console.log('Download!') 
    } 
}))


// 이벤트 리스너 생성
window.addEventListener('contextmenu', (e) => {
    e.preventDefault()
    
    // 마우스 오른쪽 버튼 클릭한 위치(target)의 아이디(id)값이 imageDiv인 경우 메뉴 표시
    if (e.target.id === "imageDiv")
        menu.popup({
            window: remote.getCurrentWindow()
        })

}, false)







[참고] https://electronjs.org/docs/api/menu

반응형