소개글
윈도우 프로그래밍 버튼 이벤트 처리및 차일드 윈도우 생성 레포트 자료입니다.
컴파일 실행환경
(1) 메인 윈도우에는 ‘본인의 이름’이 출력된다(메인 윈도우의 윈도우 타이틀은 “윈도우 프로그래밍”).
(2) 차일드 윈도우에는 ‘본인의 학번’이 출력된다(차일드 윈도우의 윈도우 타이틀은 “학번”).
(3) 버튼을 만들고, 버튼 캡션 이름을 [소속]으로 변경한다.
(4) [소속]을 클릭하면 메시지 박스에 ‘본인이 속한 지역대학’이 나오도록 메시지 박스를 수정한다(메시지 박스 캡션은 “지역대학”).
본문내용
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
HWND hChildWnd ;
switch (message)
{
case WM_COMMAND:
switch (LOWORD(wParam) )
{
case ID_BTN_LOCATE:
MessageBox(hWnd,"서울 지역","지역대학",MB_OK);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
TextOut(hdc, 100, 100, "홍길동", strlen("홍길동"));
EndPaint(hWnd, &ps);
break;
case WM_CREATE:
// button 생성
if(! (hChildWnd = CreateWindow("button", "소속",
WS_CHILD|WS_VISIBLE, 20, 200, 100, 30, hWnd,
(HMENU) ID_BTN_LOCATE, g_hInst, (LPVOID) NULL)))
return FALSE;
ShowWindow(hChildWnd, SW_SHOW);
// 차일드 윈도우 생성
if( !(hChildWnd= CreateWindow(
szChildWindowClass, "학번", WS_OVERLAPPEDWINDOW | WS_CHILD,
200,150,300, 100, hWnd, (HMENU) 1001, g_hInst, (LPVOID) NULL)) )
return FALSE;
ShowWindow(hChildWnd, SW_SHOW);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
압축파일 내 파일목록
hello1.aps
hello1.cpp
hello1.dsp
hello1.dsw
hello1.h
hello1.ico
hello1.ncb
hello1.opt
hello1.plg
hello1.rc
ReadMe.txt
resource.h
small.ico
StdAfx.cpp
StdAfx.h
Thumbs.db
Release/hello1.exe
Release/hello1.obj
Release/vc60.idb
참고 자료
없음