반응형

[CListCtrl]


1. 리스트 컨트롤 생성

(h)

CListCtrl m_listCtrl;

(cpp)

DDX_Control(pDX, IDC_LIST_CTRL, m_listCtrl); // IDC_LIST_CTRL: 리스트 컨트롤의 ID


2. 리스트 컨트롤 기본모양 변경

(cpp)

m_listCtrl.ModifyStyle(0, LVS_REPORT);

// LVS_REPORT: 리포트 형태

// LVS_ICON: 아이콘 형태

// LVS_SMALLICON: 작은 아이콘 형태

// LVS_LIST: 리스트 형태

// 리스트 컨트롤 기본모양 변경은 리소스의 속성에서 "View"에서 설정할 수 있다. 리소스 뷰에서 설정 후 코드에서 ModifyStyle();을 실행 할 경우 코드 기준으로 인식되므로 주의.


3. 리스트 컨트롤 칼럼 추가/삭제

(추가)

m_listCtrl.InsertColumn(nCol, "~~", LVCFMT_LEFT, nWidth, -1);

// nCol: 삽입할 칼럼 순번

// "~~": 삽입할 칼럼명

// LVCFMT_LEFT: 칼럼 열 정렬 옵션.(LVCFMT_LEFT, LVCFMT_RIGHT, LVCFMT_CENTER)

// nWidth: 칼럼 너비

// -1: 서브 아이템 존재 시 연결 여부. -1로 설정 할 경우 서브아이템 존나 안하는 걸로 판단.

(삭제)

m_listCtrl.DeleteColumn(nCol); // 입력 Col값에 맞는 항목 삭제. 첫 항목(Col==0)삭제하면

// 다음 항목이 Col==0이 되므로 연속삭제 시 생각하고 삭제.


4. 리스트 컨트롤 값 추가/삭제

(추가)

m_listCtrl.InsertItem(nRow, "~~"); // nRow: 행 번호, "~~": 입력 행의 첫 칼럼에 들어갈 값

m_listCtrl.SetItem(nRow, nCol, LVIF_TEXT, "~~", 0, 0, 0, NULL); 

// nRow: 행 번호, nRow: 열 번호

// LVIF_TEXT: 입력 옵션.

// "~~": 입력 값

// 0, 0, 0, NULL: 마스크 및 이미지 등의 값인데 인터넷 찾으면 나옵니다.


(삭제)

m_listCtrl.DeleteAllItems(); // 전체 항목 삭제

m_listCtrl.DeleteItem(nRow); // 입력 Row값에 맞는 항목 삭제. 첫 항목(Row==0)삭제하면

// 다음 항목이 Row==0이 되므로 연속삭제 시 생각하고 삭제.


5. 선택된 아이템 확인

POSITION pos = m_listCtrl.GEtFirstSeletedItemPosition();


while (pos)

{

int nItem = m_listCtrl.GetNextSelectedItem(pos); // 자동으로 pos++ 됨.

// nItem  을 활용하여 변경 등의 행위 하시면 됩니다.

}


6. 리스트컨트롤 헤더 칼럼 핸들러 가져오기

CHeaderCtrl *pHeader = (CHeaderCtrl *)m_listCtrl.GetDlgItem(0); // 리스트 컨트롤 칼럼 헤더

// 리스트 컨트롤 헤더 크기조절 및 선택 못하게 하기

::EnableWindow(pHeader->GetSafeHwnd(), FALSE);

// 리스트 컨트롤 헤더 크기조절 및 선택 가능하게 하기

::EnableWindow(pHeader->GetSafeHwnd(), TRUE);


7. 리스트컨트롤 활성화/비활성화

m_listCtrl.EnableWindow(TRUE); // 사용 가능하도록 활성화

m_listCtrl.EnableWindow(TRUE); // 사용 불가능하도록 비활성화



반응형
Posted by tislqhf

블로그 이미지
개인적인 공부자료 정리하는 공간
tislqhf

태그목록

공지사항

Yesterday
Today
Total

달력

 « |  » 2025.4
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함