일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MyThread
- Time
- Tipsware
- SSG
- 별찍기
- C
- 유료강좌
- C++
- 별찍기 기초
- mfc 실습
- 충무창업큐브
- MyTread
- 마이크로소프트
- do it c
- 김성엽
- linux
- 정보처리기사
- 핵심 요약
- 실습
- 포트폴리오
- mysql
- 미가공
- tips강좌
- MFC
- MFC 예제
- ListBox
- win32
- 도움말
- 정처기 독학
- C언어
- Today
- Total
목록ListBox (5)
History
저번 게시글에 이어서 ListBox안에 있는 항목 옮기는 프로그램을 OwnerDraw를 사용해서 리스트 박스에 있는 버튼 인터페이스를 바꿔보았다. 확인과 취소 버튼은 비교를 위해서 바꾸지도 않았다. 기능은 저번 게시물에 올렸던 것과 같다.
저번 게시글에 이어서 ListBox안에 있는 항목 옮기는 프로그램을 OwnerDraw를 사용해서 리스트 박스에 있는 인터페이스를 바꿔보았다. 이 프로그램도 위로 버튼이 눌리면 현재 클릭된 항목이 위로 움직이게 구성되어 있고, 아래 버튼을 누르면 현재 클릭한 항목이 아래로 내려간다. 각 항목의 index는 현재 item의 개수에 맞춰서 해야 하기 때문에 조건을 넣어줘야 프로그램이 죽지 않고 잘 동작한다. 일반 리스트 박스와 다른 점은 GetIDlgtemPtr함수를 이용해서 값을 변경해주었다.
이번 실습은 버튼을 이용하여 ListBox의 항목을 움직이는 실습을 진행한다. 위로 버튼이 눌리면 현재 클릭된 항목이 위로 움직이게 구성되어 있고, 아래 버튼을 누르면 현재 클릭한 항목이 아래로 내려간다. 각 항목의 index는 현재 item의 개수에 맞춰서 해야 하기 때문에 조건을 넣어줘야 프로그램이 죽지 않고 잘 동작한다.
우선 ListCtrl과 ListBox, 추가 버튼 등을 추가하고 이름 번호 나이 를 입력하고 추가를 누르면 왼쪽 ListBox에 순차적으로 들어간다. 그리고 리스트박스에 있는 데이터를 클릭하면 오른쪽에 있는 ListCtrl에 각 데이터가 분산되어 들어간다. 키보드,마우스로 움직인 영상
이번 실습은 step2 내용을 클래스화 하는 과정을 진행했다. 클래스의 이름은 TW_ListBox로 추가했고, 기존 dlg헤더 파일에 새로 추가한 클래스를 상속받아서 코드를 작성했다. 이 코드는 MFC기반이 아닌 Win32기반 HDC형태로 작업했다. 클래스화를 진행하면 나중에 코드를 정리하여 재사용 가능한 클래스로 사용할 수 있기 때문에 차후 실무에서 많이 쓰일 기술로 보인다. 외형은 기존과 동일하다. 아직 혼자서 클래스 구분을 하기에는 실력이 부족하여 실습을 많이 해야할 것 같다. 다음에는 step_4 실습을 하겠다.