전체 글340 WTL 실습 예제 http://www.winapi.co.kr 의 강좌 중 ApiDraw란 놈을 WTL을 사용하도록 변경해 봤다. 5. 편집 보조 도구 - 라. 툴바 여기까지 완료. 약간의 design pattern ( command pattern과 prototype pattern) 도 사용해 봤는데 command pattern의 경우 design pattern을 모르고 있을 때도 사용하던 기법이네.. 마무리 해야하는데 귀찮다... 2010. 10. 17. WTL 의 class 목록 과 global function (ver 8.1 9127) - atlapp.h |= atlcrack.h - atlctrls.h - atlctrlw.h - atlctrlx.h |= atlddx.h - atldlgs.h atldwm.h atlfind.h - atlframe.h - atlgdi.h - atlmisc.h - atlprint.h |= atlres.h |= atlresce.h - atlscrl.h - atltheme.h - atluser.h |= atlwince.h |= atlwinx.h atlapp.h /////////////////////////////////////////////////////////////////////////////// // Classes in this file: // // CMessageFilter // CIdleHandler /.. 2010. 10. 17. LOWORD() / HIWORD() ① INT nX = LOWORD( lParam ); INT nY = HIWORD( lParam ); ② INT nX = (INT)(SHORT) LOWORD( lParam ); INT nY = (INT)(SHORT) HIWORD( lParam ); LPARAM 이 마우스 포인트 일 때 위 두개의 문장이 무슨 차이가 있을까? 어차피 상위 16 비트는 y 값, 하위 16 비트는 x값으로 동일 하다. 하지만 SetCapture() 함수와 연결 되었을 때 얘기는 달라진다. 어플의 화면 영역 좌표를 x1, y1, x2, y2라고 할 때 SetCapture 함수가 실행되면 ReleaseCapture 함수가 실행 되기 전까지 마우스가 x1, y1, x2, y2 영역을 벗어나도 메세지를 받을 수 있게 되는데.. 마우스가.. 2010. 10. 14. WTL 프로그램의 다이얼로그 포커스 문제 WM_PAINT 메세지 처리에서는 무조건 DC 를 생성 해야한다. 그게 MFC 프로그램이든, WTL 프로그램이든 혹은 Win32 API 프로그램이든.. 이것 때문에 또 얼마나 시간을 보낸건지.. WTL 프로그램에서 다이얼로그를 생성하는데 포커스가 다이얼로그에 오지를 않는 증상이 발생한 이유가 미리 만들어둔 아무짓도 안하는 WM_PAINT 메세지 핸들러가 문제 였다. 아무짓은 하지 않더라도 DC를 생성해주어야 위와 같은 증상이 발생하지 않는다.. 2010. 10. 12. 이전 1 ··· 45 46 47 48 49 50 51 ··· 85 다음