반응형
MFC에서 hInst와 hWnd를 필요로 할 때가 있습니다.
Win32 API함수 등을 이용할 때 사용해야 할 필요가 생깁니다.
// hInstance를 구하는 법 AfxGetInstanceHandle(); // hWnd를 구하는 법 GetSafeHwnd();
이 2개를 이용해서 사용하면 됩니다.
예제 코드는 다음과 같습니다.
::SetWindowLong(GetSafeHwnd(), GWL_EXSTYLE, ::GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE) | WS_EX_LAYERED); this->SetLayeredWindowAttributes(RGB(0, 0, 255), 128, LWA_ALPHA | LWA_COLORKEY);
윈도우를 투명하게 만들어주는 코드로 GetSafeHwnd()가 사용되는 것을 볼 수 있습니다.
다이어로그 기반에서 이렇게만 넣어줘도 다이어로그의 투명화가 이루어집니다.
물론 이런 방법 말고도 해당 윈도우 내에서 사용할 때는 this->m_hWnd를 쓰셔도 됩니다.
핸들을 반환하는 함수는 대부분 유효하지 않은 객체에 대해서는 NULL을 리턴합니다.
NULL 체크를 하는 코드를 반드시 추가하는 것을 권장합니다.
반응형
'Programming > Win32&MFC&COM' 카테고리의 다른 글
프로세스 목록 확인하기(작업 관리자) (0) | 2015.01.03 |
---|---|
API, MFC에서 사용하는 변수형 (0) | 2015.01.02 |
윈도우 리전(Region) 설정해서 윈도우 모양 바꾸기 (0) | 2014.12.31 |
다중 실행 방지 코드(CreateMutex) (0) | 2014.12.27 |
자신의 IP를 확인하기 (0) | 2014.12.23 |