대화상자
명령 및 정보 전달을 위한 특별한 윈도우
모달(modal)형 : 대화상자를 닫기 전에 다른 윈도우로 전환될 수 없다.
모델리스(modeless)형 : 대화상자를 열어 놓은 채 다른 윈도우로 전환가능.
대화상자 템플릿 : 대화상자 내 컨트롤 배치 상태가 저장되는 이진 정보. -> 리소스 ID로 컨트롤 및 대화상자 구분.
대화상자 프로시저 : 대화상자에서 발생하는 메시지 처리
컨트롤의 종류
![](http://www.winapi.co.kr/win32lec/lec8/Image73.gif)
출처 : http://www.winapi.co.kr/win32lec/lec8/lec8-2-1.htm
탭 순서(Tab order)
탭 키를 누를 때 포커스가 이동되는 순서
서식/탭 순서(Layout/Tab Order) 이용
![](http://www.winapi.co.kr/win32lec/lec8/Image94.gif)
출처 : http://www.winapi.co.kr/win32lec/lec8/lec8-2-8.htm
컨트롤과의 통신
대화 상자 안에서 컨트롤을 제어하려면 ID가 필요하기 때문에 다음과 같은 함수가 필요.
- 컨트롤의 윈도우 핸들 얻기
HWND GetDlgItem(HWND hWnd, int nIDDlgItem)
Int GetDlgCtrlID(HWND hWndCtl)
- (에디트)컨트롤의 문자열 제어
UINT GetDlgItemText(HWND, int, LPTSTR, int nMaxCount);
BOOL SetDlgItemText(HWND, int, LPCTSTR);
- (에디트)컨트롤의 숫자 제어
UINT GetDlgItemInt(HWND, int, BOOL*, BOOL);
BOOL SetDlgItemInt(HWND, int, UINT, BOOL);
'컴퓨터 공부 > Win32 API 프로그래밍' 카테고리의 다른 글
[스터디] 윈도우즈 API 정복2 - 35장 레지스트리. (0) | 2009.05.06 |
---|---|
[5월 1일 3교시] 대화상자 2 + 메세지1 (0) | 2009.05.01 |
[5월 1일 1교시] 컨트롤2 (0) | 2009.05.01 |
[숙제] 맵핑모드 (0) | 2009.05.01 |
[4월 30일 3교시] 그래픽4 + 컨트롤 (0) | 2009.04.30 |