[]
셀에 체크 박스를 표시하려면 CheckBox 셀을 사용할 수 있습니다. 체크 박스 셀은 작은 체크 박스를 표시하며, 체크됨(checked), 체크되지 않음(unchecked), 불확정(indeterminate)의 세 가지 상태 중 하나를 가질 수 있습니다. 텍스트를 설정하여 체크 박스를 사용자 정의할 수도 있습니다.
isThreeState 메서드를 true 로 설정하면, 기본 두 가지 상태(체크됨/해제됨) 외에 불확정 상태도 사용할 수 있습니다. 또한 textAlign 메서드를 통해 체크 박스와 텍스트의 정렬을 지정할 수 있습니다.
다음 표와 같이 value 메서드를 사용하여 코드에서 체크박스의 상태를 설정할 수 있습니다:
값 (Value) | 상태 (State) |
---|---|
| Indeterminate (불확정) |
| Unchecked (체크 안 됨) |
| Checked (체크됨) |
boxSize() 메서드를 사용하여 체크박스의 크기를 변경할 수 있으며, 값으로 숫자 또는 "auto"
를 설정할 수 있습니다.
잘못된 값을 설정하면 체크박스 크기는 변경되지 않습니다. 체크박스 셀의 기본 크기는 12×12입니다.
이 예제는 3가지 상태를 가진 체크박스 셀을 생성합니다.
// 활성화 시트 가져오기
var activeSheet = spread.getSheet(0);
var cellType = new GC.Spread.Sheets.CellTypes.CheckBox();
cellType.caption("caption");
cellType.textTrue("True");
cellType.textFalse("False");
cellType.textIndeterminate("Indeterminate");
cellType.textAlign(GC.Spread.Sheets.CellTypes.CheckBoxTextAlign.bottom);
cellType.isThreeState(true);
cellType.boxSize(20);
activeSheet.getCell(1, 1).cellType(cellType);
//activeSheet.getCell(1, 1).value(1);
체크박스 캡션이 셀 안에 다 들어가지 않을 정도로 길 경우, 텍스트를 줄바꿈하려면 셀 스타일의 wordWrap 속성을 true
로 설정해야 합니다.
wordWrap 속성은 기본값이 false
입니다.
wordWrap 속성 | 결 |
---|---|
wordWrap = false | |
wordWrap = true |
체크박스 셀의 줄바꿈 규칙은 먼저 단어 단위로 줄을 바꾸며, 필요할 경우 단어 내부에서도 줄바꿈이 발생할 수 있습니다.
wordWrap 이 활성화된 상태에서 셀의 수직 정렬이 설정되면, 체크박스는 다음과 같이 표시됩니다:
수직 정렬 | 결 |
---|---|
셀 vAlign이 top이면 체크박스가 셀 위쪽에 정렬됨 | |
셀 vAlign이 middle이면 체크박스가 셀 중앙에 정렬됨 | |
셀 vAlign이 bottom이면 체크박스가 셀 아래쪽에 정렬됨 |
그러나 줄바꿈된 텍스트의 수평 정렬은 셀의 hAlign
값에 따라 변경할 수 있습니다. 예를 들어, 셀의 hAlign
이 right
로 설정되면 캡션 텍스트만 셀의 오른쪽에 정렬됩니다.
마찬가지로 hAlign
이 left
또는 center
로 설정되면 캡션 텍스트의 정렬만 각각 왼쪽 또는 가운데로 변경됩니다.
이 예제는 체크박스 셀에서 wordWrap 기능을 구현합니다.
// 긴 캡션 설정
cellType.caption("This is a very very long long text");
activeSheet.getCell(1, 1).cellType(cellType);
activeSheet.setRowHeight(1, 120);
activeSheet.setColumnWidth(1, 110);
// wordwrap 속성을 true 설정
activeSheet.getCell(1, 1).wordWrap(true);