본문 바로가기
다물칸 주소복사
조회 수 5051 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
Extra Form
구분 팁&트릭

다운: 플렉스그리드에서 입력받기.zip


아마 이걸 이용해서 엑셀만한 기능은 못될지언정 비스무리 하게 만들 수는 있을 것 같네요.

소스내용은 MSHFlexGrid와 텍스트 박스를 이용해서 현재 선택된 셀에 텍스트 박스를 위치시켜 값을 입력받을 수 있게 하며

마우스 포인터가 다른 셀등으로 빠져 나갔을 경우 입력한 값을 셀에 입력합니다.

 

더 응용해서 1, 2, 3번째 셀에 숫자값을 입력하면 바로바로 5번째 셀에 1, 2, 3셀의 값을 더해서 뿌려줍니다.

4번째 셀은 마우스가 가도 입력되지 못하는 코드를 추가했습니다.

 


참고. MSHFlexGrid 컨트롤 상수 (MSDN에서 발췌합니다.)

 

이 절에는 MSHFlexGrid의 컨트롤 상수를 설명합니다. 다른 언급이 없을 경우 이들 상수는 MSFlexGrid에도 적용할 수 있습니다.

AddModeSettings 속성(MSHFlexGrid)

상수 설명
flexNoAddNew 0 현재 셀이 마지막 행에 있지 않고 보류 중인 AddNew 작업도 없습니다.
flexAddNewCurrent 1 현재 셀이 마지막 행에 있지만 보류 중인 AddNew 작업은 없습니다.
flexAddNewPending 2 현재 셀이 마지막 행 다음에 있습니다. 이것은 MSHFlexGrid의 사용자 인터페이스를 통해 사용자가 시작한 보류 AddNew 작업의 결과이거나 프로그램적으로 열의Value나 Text 속성을 설정한 결과입니다.

AllowUserResizing 속성

상수 설명
flexResizeNone 0 마우스로 크기를 재조정할 수 없습니다. 기본값입니다.
flexResizeColumns 1 마우스로 열의 크기를 재조정할 수 있습니다.
flexResizeRows 2 마우스로 행의 크기를 재조정할 수 있습니다.
flexResizeBoth 3 마우스로 열과 행의 크기를 재조정할 수 있습니다.

Appearance 속성

상수 설명
flexFlat 0 MSHFlexGrid의 전체 모양이 평면이거나 표준입니다.
flex3D 1 MSHFlexGrid의 전체 모양이 3차원입니다.

BorderStyle 속성

상수 설명
flexBorderNone 0 테두리가 없습니다.
flexBorderSingle 1 단일 테두리입니다.

CellAlignment 속성

상수 설명
flexAlignLeftTop 0 셀 내용을 왼쪽 위로 맞춥니다.
flexAlignLeftCenter 1 셀 내용을 왼쪽 가운데로 맞춥니다. 문자열에 대한 기본값입니다.
flexAlignLeftBottom 2 셀 내용을 왼쪽 아래로 맞춥니다.
flexAlignCenterTop 3 셀 내용을 가운데 위로 맞춥니다.
flexAlignCenterCenter 4 셀 내용을 중앙에 놓습니다.
flexAlignCenterBottom 5 셀 내용을 가운데 아래로 맞춥니다.
flexAlignRightTop 6 셀 내용을 오른쪽 위로 맞춥니다.
flexAlignRightCenter 7 셀 내용을 오른쪽 가운데로 맞춥니다. 숫자에 대한 기본값입니다.
flexAlignRightBottom 8 셀 내용을 오른쪽 아래로 맞춥니다.
flexAlignGeneral 9 셀 내용을 일반적인 맞춤 방법으로 정렬합니다. 문자열에 대해서는 "왼쪽 가운데"로 숫자에 대해서는 "오른쪽 가운데"로 맞춥니다.

CellPictureAlignment 속성

상수 설명
flexAlignLeftTop 0 그림을 왼쪽 위로 맞춥니다.
flexAlignLeftCenter 1 그림을 왼쪽 가운데로 맞춥니다.
flexAlignLeftBottom 2 그림을 왼쪽 아래로 맞춥니다.
flexAlignCenterTop 3 그림을 가운데 위로 맞춥니다.
flexAlignCenterCenter 4 그림을 중앙에 놓습니다.
flexAlignCenterBottom 5 그림을 가운데 아래로 맞춥니다.
flexAlignRightTop 6 그림을 오른쪽 위로 맞춥니다.
flexAlignRightCenter 7 그림을 오른쪽 가운데로 맞춥니다.
flexAlignRightBottom 8 그림을 오른쪽 아래로 맞춥니다.

CellTextStyle, TextStyle, TextStyleFixed 속성

상수 설명
flexTextFlat 0 표준 평면 텍스트입니다.
flexTextRaised 1 텍스트가 볼록하게 표시됩니다.
flexTextInset 2 텍스트가 오목하게 표시됩니다.
flexTextRaisedLight 3 텍스트가 약간 볼록하게 표시됩니다.
flexTextInsetLight 4 텍스트가 약간 오목하게 표시됩니다.

CellType 속성(MSHFlexGrid)

상수 설명
flexCellTypeStandard 0 표준 셀입니다.
flexCellTypeFixed 1 고정된 행이나 열에 포함된 셀입니다.
flexCellTypeHeader 2 데이터 밴드의 머리글 셀입니다.
flexCellTypeIndent 3 데이터 밴드를 들여쓰기하는 열에서 사용하는 셀입니다.
flexCellTypeUnpopulated 4 채워지지 않는 셀입니다.

ColAlignment 속성

상수 설명
flexAlignLeftTop 0 열 내용을 왼쪽 위로 맞춥니다.
flexAlignLeftCenter 1 열 내용을 왼쪽 가운데로 맞춥니다. 문자열에 대한 기본값입니다.
flexAlignLeftBottom 2 열 내용을 왼쪽 아래로 맞춥니다.
flexAlignCenterTop 3 열 내용을 가운데 위로 맞춥니다.
flexAlignCenterCenter 4 열 내용을 중앙에 놓습니다.
flexAlignCenterBottom 5 열 내용을 가운데 아래로 맞춥니다.
flexAlignRightTop 6 열 내용을 오른쪽 위로 맞춥니다.
flexAlignRightCenter 7 열 내용을 오른쪽 가운데로 맞춥니다. 숫자에 대한 기본값입니다.
flexAlignRightBottom 8 열 내용을 오른쪽 아래로 맞춥니다.
flexAlignGeneral 9 열 내용을 일반적인 맞춤 방법으로 정렬합니다. 문자열에 대해서는 왼쪽 가운데로 숫자에 대해서는 오른쪽 가운데로 맞춥니다.

ColHeader 속성(MSHFlexGrid)

상수 설명
FlexColHeaderOn 0 각 밴드에 머리글을 표시합니다.
flexColHeaderOff 1 밴드에 머리글이 표시되지 않습니다.
flexColHeaderOnce 2 밴드에 머리글을 표시합니다. 밴드가 축소되면 한 개의 머리글만 표시됩니다. 이중 머리글은 표시되지 않습니다.

DisplayBandSettings 속성(MSHFlexGrid)

상수 설명
flexBandDisplayHorizontal 0 MSHFlexGrid내의 밴드가 수평으로(가로질러) 표시됩니다. 기본값입니다.
flexBandDisplayVertical 1 MSHFlexGrid내의 밴드가 수직으로(위 아래로) 표시됩니다.

DisplayCellSettings 속성(MSHFlexGrid)

상수 설명
FlexCellDisplayHorizontal 0 MSHFlexGrid내의 밴드가 수평으로(가로질러) 표시됩니다.
flexCellDisplayVertical 1 MSHFlexGrid내의 밴드가 수직으로(위 아래로) 표시됩니다.

FillStyle 속성

상수 설명
flexFillSingle 0 단일. Text나 셀의 속성을 변경할 경우 활성 셀만 영향을 받습니다. 기본값입니다.
flexFillRepeat 1 반복. Text나 셀의 속성을 변경할 경우 선택된 모든 셀이 영향을 받습니다.

FocusRect 속성

상수 설명
flexFocusNone 0 현재 셀 주위에 포커스 사각형을 표시하지 않습니다.
flexFocusLight 1 현재 셀 주위에 가는 포커스 사각형을 표시합니다. 기본값입니다.
flexFocusHeavy 2 현재 셀 주위에 굵은 포커스 사각형을 표시합니다.

GridLines, GridLinesFixed 속성

상수 설명
flexGridNone 0 선 없음. 셀 사이에 선이 없습니다. MSFlexGrid에서 GridLines의 기본값입니다.
flexGridFlat 1 선. 셀 사이의 선 유형이 표준 평면 선으로 설정됩니다. MSHFlexGrid에서GridLines의 기본값입니다.
flexGridInset 2 오목한 선. 셀 사이의 선 유형이 오목한 선으로 설정됩니다. MSFlexGrid에서GridLinesFixed의 기본값입니다.
flexGridRaised 3 볼록한 선. 셀 사이의 선 유형이 볼록한 선으로 설정됩니다. MSHFlexGrid에서GridLinesFixed의 기본값입니다.

HighLight 속성

상수 설명
flexHighlightNever 0 선택된 셀을 반전하지 않습니다.
flexHighlightAlways 1 선택된 셀을 항상 반전합니다. 기본값입니다.
FlexHighlightWithFocus 2 컨트롤에 포커스가 있을 경우에만 반전합니다.

MergeCells 속성

상수 설명
flexMergeNever 0 병합 안함. 동일한 내용을 가진 셀들을 그룹화하지 않습니다. 기본값입니다.
flexMergeFree 1 자유. 동일한 내용을 가진 셀들을 항상 병합합니다.
flexMergeRestrictRows 2 행 제한. 행 내에서 동일한 내용을 갖는 인접 셀(현재 셀의 왼쪽에 있는)만 병합합니다.
flexMergeRestrict-Columns 3 열 제한. 열 내에서 동일한 내용을 갖는 인접 셀(현재 셀의 위에 있는)만 병합합니다.
flexMergeRestrictBoth 4 모두 제한. 행이나 열 내에서 동일한 내용을 갖는 인접 셀(현재 셀의 왼쪽 또는 위에 있는)만 병합합니다.

MousePointer 속성

상수 설명
flexDefault 0 MSHFlexGrid의 윤곽
flexArrow 1 화살표
flexCross 2 십자 모양
flexIBeam 3 텍스트 입력을 위한 I형
flexIcon 4 정사각형 내의 정사각형
flexSize 5 위, 아래, 왼쪽, 오른쪽을 가리키는 화살표 모양의 크기 조정 포인터
flexSizeNESW 6 오른쪽 위와 왼쪽 아래를 가리키는 화살표 모양의 크기 조정 포인터
flexSizeNS 7 위와 아래를 가리키는 화살표 모양의 크기 조정 포인터
flexSizeNWSE 8 왼쪽 위와 오른쪽 아래를 가리키는 화살표 모양의 크기 조정 포인터
flexSizeEW 9 왼쪽과 오른쪽을 가리키는 화살표 모양의 크기 조정 포인터
flexUpArrow 10 위쪽 화살표
flexHourGlass 11 모래 시계 모양
flexNoDrop 12 포인터 놓기 못함
flexCustom 13 사용자 정의 포인터

PictureType 속성

상수 설명
flexPictureColor 0 전체 색상을 사용한 고품질의 이미지를 만듭니다.
flexPictureMonochrome 1 메모리를 적게 사용하는 저품질의 단색 이미지를 만듭니다.

RowSizingSettings 속성(MSHFlexGrid)

상수 설명
flexRowSizeIndividual 0 행의 크기를 재조정할 경우 조정된 행만 높이가 변경됩니다. 기본값입니다.
flexRowSizeAll 1 행의 크기를 재조정할 경우 MSHFlexGrid의 모든 행 높이가 변경됩니다.

SelectionMode 속성

상수 설명
flexSelectionFree 0 자유. MSHFlexGrid의 각 셀을 스프레드시트 유형으로 선택할 수 있습니다. 기본값입니다.
flexSelectionByRow 1 행 단위. 다중 열 목록 상자나 레코드 단위로 표시할 때처럼 전체 행 단위로만 선택할 수 있습니다.
flexSelectionByColumn 2 열 단위. 차트의 범위를 선택하거나 정렬을 위해 필드를 선택할 때처럼 열 단위로만 선택할 수 있습니다.

ScrollBars 속성

상수 설명
flexScrollNone 0 MSHFlexGrid에 스크롤 막대가 없습니다.
flexScrollHorizontal 1 MSHFlexGrid에 수평 스크롤 막대를 둡니다.
flexScrollVertical 2 MSHFlexGrid에 수직 스크롤 막대를 둡니다.
flexScrollBoth 3 MSHFlexGrid에 수평 및 수직 스크롤 막대를 둡니다. 기본값입니다.

Sort 속성

상수 설명
flexSortNone 0 없음. 정렬하지 않습니다.
flexSortGenericAscending 1 일반 오름차순. 텍스트가 문자열인지 숫자인지를 예측하는 오름차순 정렬을 수행합니다.
flexSortGenericDescending 2 일반 내림차순. 텍스트가 문자열인지 숫자인지를 예측하는 내림차순 정렬을 수행합니다.
flexSortNumericAscending 3 숫자 오름차순. 문자열을 숫자로 변환하는 오름차순 정렬을 수행합니다.
flexSortNumericDescending 4 숫자 내림차순. 문자열을 숫자로 변환하는 내림차순 정렬을 수행합니다.
flexSortStringNoCaseAsending 5 문자열 오름차순. 대/소문자를 구분하지 않는 문자열 비교를 사용하는 오름차순 정렬을 수행합니다.
flexSortNoCaseDescending 6 문자열 내림차순. 대/소문자를 구분하지 않는 문자열 비교를 사용하는 내림차순 정렬을 수행합니다.
flexSortStringAscending 7 문자열 오름차순. 대/소문자 구분 문자열 비교를 사용하는 오름차순 정렬을 수행합니다.
flexSortStringDescending 8 문자열 내림차순. 대/소문자 구분 문자열 비교를 사용하는 내림차순 정렬을 수행합니다.
flexSortCustom 9 사용자 정의. Compare 이벤트를 사용하여 행을 비교합니다.