본문 바로가기
C & C++/MFC 컨트롤

[Tip] 작업표시줄 숨기기

by izen8 2011. 4. 4.
반응형

전체화면으로 처리할일이 생기는데 만약 작업표시줄을 없애야 한다면?

자동으로 숨기기 기능 코드이다. 바로 적용시키면 된다.

void CMyPlannerDlg::hideWorkBar()   
  1. {   
  2.     APPBARDATA stAppBarData;    
  3.   
  4.     // 구조체 초기화   
  5.     ZeroMemory( &stAppBarData, sizeof stAppBarData );   
  6.     stAppBarData.cbSize = sizeof stAppBarData;    
  7.   
  8.     // 작업 표시줄 핸들을 찾는다.   
  9.     stAppBarData.hWnd = (HWND)FindWindow( _T("Shell_TrayWnd"), NULL );    
  10.     stAppBarData.lParam |= ABS_AUTOHIDE;   
  11.   
  12.     // 쉘 메시지를 전달한다.   
  13.     SHAppBarMessage( ABM_SETSTATE, &stAppBarData );   
  14. }  


그리고 복구하는 코드이다. 복구를 하지 않으면 사용자에게 불편을 초래할 수 있다.

  1. void CMyPlannerDlg::showWorkBar()   
  2. {   
  3.     APPBARDATA stAppBarData;    
  4.   
  5.     // 구조체 초기화   
  6.     ZeroMemory( &stAppBarData, sizeof stAppBarData );   
  7.   
  8.     stAppBarData.cbSize = sizeof stAppBarData;    
  9.     // 작업 표시줄 핸들을 찾는다.   
  10.     stAppBarData.hWnd = (HWND)FindWindow( _T("Shell_TrayWnd"), NULL );    
  11.     stAppBarData.lParam |= ABS_ALWAYSONTOP;   
  12.   
  13.     // 쉘 메시지를 전달한다.   
  14.     SHAppBarMessage( ABM_SETSTATE, &stAppBarData );   
  15. }  

이렇게해서 간단히 구현할 수 있다.
반응형

댓글