스플리터 컨트롤
스플리터 컨트롤은 전체 다이얼로그 크기를 늘리거나 줄이지 않고도 사용자가 내부 다이얼로그 레이아웃을 쉽게 변경할 수 있도록 하는 특수 사용자 컨트롤입니다. 이 컨트롤을 사용하면 사용자가 다이얼로그 보기를 동적으로 수정할 수 있으므로 필요한 정보를 신속하게 사용할 수 있습니다.
항목 타입
- DG_ITM_SPLITTER
서브 타입
-
서브 타입 의미 DG_SPLT_HORIZONTAL 스플리터가 수평으로 표시되고 수직으로 드래그될 수 있습니다. DG_SPLT_VERTICAL 스플리터가 수직으로 표시되고 수평으로 드래그될 수 있습니다. DG_SPLT_TRANSPARENT 스플리터가 투명하며 커서 피드백을 통해서만 드래그 가능한 스플리터가 있다는 것을 볼 수 있습니다.
GRC 사양
Splitter x y dx dy [Transparent]
x와 y는 스플리터의 좌상단 코너의 픽셀 좌표입니다. dx와 dy는 항목 너비와 높이의 픽셀 크기입니다. 투명 스플리터를 그리려면 선택적인 Transparent flag를 세트합니다. 만약 선택적인 Transparent flag가 생략되면, 일반 스플리터 컨트롤이 그려집니다. 수평 및 수직 서브 타입은 컨트롤의 항목 너비와 항목 높이에 따라 달라집니다.
메시지
-
메시지 의미 DG_MSG_SPLITTERDRAG 스플리터 컨트롤이 드래그 상태입니다. 메시지 데이터 파라미터는 long으로 캐스팅된 DGSplitterMsgData structure에 대한 포인터입니다. 이 structure는 사용자 액션에 대한 정보를 가지고 있습니다. DG_MSG_CLICK 스플리터 컨트롤이 클릭되었습니다. 메시지 데이터 파라미터는 long으로 캐스팅된 DGSplitterMsgData structure에 대한 포인터입니다. 이 structure는 사용자 액션에 대한 정보를 가지고 있습니다. DG_MSG_DOUBLECLICK 스플리터 컨트롤이 더블 클릭되었습니다. 메시지 데이터 파라미터는 long으로 캐스팅된 DGSplitterMsgData structure에 대한 포인터입니다. 이 structure는 사용자 액션에 대한 정보를 가지고 있습니다.
투명 Flag
스플리터 컨트롤은 투명 타입이거나 일반 타입일 수 있습니다. 투명 스플리터 컨트롤의 컬러는 다이얼로그의 배경 색입니다. 이 경우 사용자는 스플리터 위의 커서 변화만으로 컨트롤을 알아차릴 수 없습니다. 일반 스플리터 컨트롤의 컬러는 롤다운 컨트롤의 컬러입니다. 즉. Theme에 의존적입니다.
설명
스플리터 컨트롤은 수평 또는 수직으로 배치될 수 있습니다. 수평 스플리터는 수직으로 드래그될 수 있고, 수직 스플리터는 수평으로 드래그될 수 있습니다. 스플리터 컨트롤 위의 커서 피드백은 가능한 상호작용을 보여줍니다. 스플리터를 드래그하는 동안 실시간 다이얼로그 업데이트가 있습니다.
두 플랫폼 모두에서 스플리터 컨트롤은 프레임이 없는 얇은 영역이며, 두께는 리소스에서 정의됩니다. - 제안된 최소 두께는 7 픽셀입니다. Macintosh에는 스플리터 컨트롤 중간에 작은 5x5 픽셀 크기의 둥근 버튼이 있습니다. 스플리터는 다이얼로그 크기를 변경할 수 없습니다. 스플리터 컨트롤의 유효한 위치는 애플리케이션에 의해 제공됩니다. 컨트롤을 다이얼로그 영역에서 끌어낼 수 없습니다.
스플리터 컨트롤의 드래그 상태는 DGSplitterEnableDrag, DGSplitterDisableDrag, DGSplitterSetDragStatus 함수에 의해 설정할 수 있습니다. 드래그 상태는 DGSplitterIsDragEnabled 함수로 가져올 수 있습니다.
요구사항
- 버전: DG 2.2.0 또는 이후
- 헤더: DG.h
참고사항
다이얼로그 항목 타입
스플리터 컨트롤 지정 함수, DGSplitterEnableDrag, DGSplitterDisableDrag, DGSplitterSetDragStatus, DGSplitterIsDragEnabled, 콜백 함수
DG_MSG_SPLITTERDRAG, DG_MSG_CLICK, DG_MSG_DOUBLECLICK