SW 개발

[winCE/WM] 전체화면색깔 바꾸기

. . . 2009. 1. 15. 15:37
반응형
  • 기타사항 : EVC, winCE5 테스트완료.
  • OnPaint() 핸들러추가.

예제코드

  • 아래의 코드 추가. (이때 m_nColor 값을 변화시킨다음에 이벤트를 받으면 화면변함!)
void CPixelTestDlg::OnPaint() 
{ 
    // TODO: Add your message handler code here 
    COLORREF cr; 
    switch(m_nColor) 
    { 
          case TEST_COLOR_RED: 
          cr = RGB(255,0,0); 
          break; 

          case TEST_COLOR_GREEN: 
          cr = RGB(0,255,0); 
          break; 

          case TEST_COLOR_BLUE: 
          cr = RGB(0,0,255); 
          break; 

          case TEST_COLOR_WHITE: 
          cr = RGB(255,255,255); 
          break; 

          case TEST_COLOR_BLACK: 
          cr = RGB(0,0,0); 
          break; 
    } 

    CDC *pdc = GetDC(); 
    CRect rt; 
    GetClientRect( &rt ); 
    pdc->FillSolidRect(&rt,cr);  
    ReleaseDC(pdc); 
}
  • 이때 각 switch 문안의 case들은 미리 define 해놓고..
    • 이제 메지를 보낸다.
  • SendMessage(dlg->m_hWnd, CHANGE_SCREEN, 0, 0);
    • 이때 메시지에 필요한 색깔값을 실어서 보내면 바꾼다!

참고응용

전체화면과 이것을 활용하면 LCD 불량화소 검색 어플을 간단히 짤수있다.

전체화면만들기!!

관련 포스팅 : [SoftWare/win32 API / MFC] - win32API > 기본API > winCE 어플에서 전체화면만들기

반응형