[]
SpreadJS는 사용자가 여러 워크시트를 선택하고, 해당 시트들을 삭제하거나 숨기는 작업을 수행할 수 있도록 지원합니다. isSelected 속성을 사용하면 여러 워크시트를 선택하거나 선택 해제할 수 있습니다. 여러 시트가 선택된 상태에서는 컨텍스트 메뉴 옵션을 통해 숨기기나 삭제 작업을 적용할 수 있습니다.
아래 이미지는 하나의 통합 문서에서 여러 시트가 선택된 상태를 보여줍니다.
활성 시트의 선택 상태 또한 isSelected
속성이나 SheetChanging 이벤트를 사용하여 변경할 수 있습니다. 활성 시트가 선택 해제되면 해당 시트의 뷰는 activeNotSelected
상태로 전환됩니다.
reset 메서드를 사용하더라도 시트의 선택 상태는 유지됩니다.
SpreadJS는 키보드와 마우스 클릭 동작을 통해 시트의 선택 상태를 변경할 수 있도록 지원합니다. 단, 활성 시트는 항상 선택 상태로 유지되며 UI 동작만으로는 선택 해제할 수 없습니다.
UI 동작 | 선택된 시트 탭 | 선택되지 않은 시트 탭 |
---|---|---|
클릭(Click) | 클릭한 시트를 활성 시트로 설정 | 클릭한 시트를 활성 시트로 설정하고 나머지 시트는 선택 해제됨 모든 시트가 선택된 상태에서 비활성 시트를 클릭하면, 해당 시트가 활성화되고 나머지는 선택 해제됨 |
Ctrl 또는 Cmd + 클릭 | 클릭한 시트가 선택 해제됨 (단, 활성 시트는 제외) | 클릭한 시트가 선택된 시트 목록에 추가됨 |
Shift + 클릭 | 선택된 시트또는 클릭한 시트 사이의 범위를 모두 선택 |
제한 사항
터치 조작은 여러 시트 선택을 지원하지 않습니다.
실행 취소(Undo) 및 다시 실행(Redo)는 지원되지 않습니다.
숨겨진 시트는 선택할 수 없습니다
다음은 통합 문서에서 여러 워크시트의 선택 상태를 설정하는 코드 예제입니다.
Ask ChatGPT
// 활성 시트 가져오기
var activeSheet = spread.getSheet(0);
// 특정 시트의 선택 상태 설정
spread.getSheet(1).isSelected(true);
spread.getSheet(2).isSelected(false);
spread.getSheet(3).isSelected(true);
spread.getSheet(4).isSelected(true);
// 특정 시트의 선택 상태 가져오기
var selectedState = spread.getSheet(3).isSelected();