디자이너컴포넌트 버튼 추가/제거 - 디자이너 컴포넌트
페이지 정보
작성자 GrapeCity 작성일 2022-02-15 15:28 조회 902회 댓글 0건본문
관련링크
최근 기업과 정부의 디지털 트랜스포메이션이 가속화됨에 따라, 기존의 Excel(엑셀) 문서를 온라인 시스템에 통합하고, 이러한 엑셀 문서를 웹 상에서 관리하고 편집하고자 하는 요구 사항이 점점 많아지고 있습니다.
이를 위해, 웹 상에 구글 시트(Google Sheet) 또는 MS Office 365와 같이 기존의 Excel 파일과 호환이 되고, 최종 사용자가 기존의 MS Excel을 사용하는 것과 동일한 방식으로 사용할 수 있는 Excel(엑셀) 에디터를 구현하는 것은 결코 쉬운 일이 아닐 것 입니다.
이러한 요구 사항에 맞추어 GrapeCity에서는 개발자 분들이 조금이라고 쉽고 빠르게 웹 상에 Excel(엑셀) 스프레드시트의 UI와 엑셀 기능들을 구현할 수 있는 컨트롤과 함수를 제공하는 를 제공하고 있으며, 또한, 완전한 Excel 에디터 기능을 원하시는 개발자 분들을 위해, SpreadJS를 기반으로 하는 를 제공하고 있습니다.
는 구글 시트, 온라인 MS Excel과 유사한 UI, 메뉴 구조 그리고 Excel의 기능을 웹 페이지 상에 구현하고자 하시는 분들을 위한 완전한 Front-End Excel 에디터입니다.
디자이너 컴포넌트에는 아래와 같은 요소들이 포함되어 있습니다.
- 리본 메뉴
- 수식 표시줄
- 상태 표시줄
- 측면 패널
- 컨텍스트 메뉴
기본적으로 구성된 컴포넌트를 그대로 사용할 수도 있지만, 원하시는 형태에 맞게 커스터마이징하여 사용하실 수 있습니다.
이번 글에서는 디자이너 컴포넌트를 커스터마이징하는 방법 중, 탭에 버튼을 추가하거나 제거하는 방법을 소개합니다.
"탭, 컨텍스트 메뉴, 대화상자, 파일 불러오기 이벤트 바인딩, 상태 표시줄, 사용자 지정 컴포넌트, 지역화"와 같은 추가적인 디자이너 컴포넌트를 커스터마이징 하는 방법을 확인 하고자 하시는 경우에는,
를 눌러 글 목록을 확인하실 수 있습니다.
해당 내용들을 참고하여 디자이너 컴포넌트를 여러분이 원하는 대로 커스터마이징해 보시기 바랍니다.
아래 화면은 실제 디자이너 컴포넌트로 구현된 화면입니다. 상단의 HTML / JS 탭을 통해 소스코드를 확인하고 바로 수정해 결과를 확인해볼 수 있습니다.
홈 탭에 버튼 추가
아래 단계를 따라 홈 탭에 버튼을 추가할 수 있습니다.
홈 탭의 buttonGroups에 버튼 레이아웃 구조를 입력합니다.
config.ribbon[0].buttonGroups.splice(0, 0, { "label": "연락처", "thumbnailClass": "gclogo", "commandGroup": { "children": [ { "direction": "vertical", "commands": [ "Call" ] } ] } });
버튼 레이아웃 구조에서 입력한 Call 명령을 commandMap에 입력합니다.
config.commandMap = { Call: { title: "Call", text: "전화번호", iconClass: "ribbon-button-gclogo", bigButton: "true", commandName: "Call", execute: async (context, propertyName, fontItalicChecked) => { alert('1670-0583'); } } }
commandMap에 입력한 ribbon-button-gclogo 클래스를 css 파일에 입력하고 아이콘으로 사용할 이미지 파일을 생성합니다.
.ribbon-button-gclogo { background-image: url('./GC_logo.png'); background-size: 35px 35px; }
수정한 config를 designer에 넣어줍니다.
var designer = new GC.Spread.Sheets.Designer.Designer(document.getElementById("gc-designer-container"), config);
홉 탭의 정렬 및 필터 버튼 제거
아래 단계를 따라 홉 탭의 정렬 및 필터 버튼을 제거할 수 있습니다.
아래 코드를 이용해 현재 buttonGroups의 배열 구조를 확인할 수 있습니다.
console.log(config.ribbon[0].buttonGroups)
'편집' 그룹의 정렬 및 필터에 해당하는 command를 제거합니다.
config.ribbon[0].buttonGroups[9].commandGroup.children.splice(1,1);
"탭, 컨텍스트 메뉴, 대화상자, 파일 불러오기 이벤트 바인딩, 상태 표시줄, 사용자 지정 컴포넌트, 지역화"와 같은 추가적인 디자이너 컴포넌트를 커스터마이징 하는 방법을 확인 하고자 하시는 경우,
를 눌러 글 목록을 확인해 보세요.
지금 바로 SpreadJS를 다운로드하여 직접 테스트해보세요!
댓글목록
등록된 댓글이 없습니다.