[]
        
(Showing Draft Content)

다중 워크시트 선택

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();