从CStatic派生一个类CMyStatic,重载DrawItem时lpDrawItemStruct->itemState取得的数据总是0。请问如何才能让自己写的CMyStatic获得焦点以致lpDrawItemStruct->itemState不再为0呢?

解决方案 »

  1.   

    To:zhoujielunzhimi
    SS_NOTIFY已经勾上了。To:schlafenhamster
    OnPaint中如何画?
      

  2.   

    SS_OWNERDRAW 这个样式设置了么?
      

  3.   

    已设样式:
    DWORD dwStyle = WS_VISIBLE | WS_CHILD | SS_CENTER | SS_NOTIFY | SS_OWNERDRAW;
      

  4.   

    设置了SS_NOTIFY样式后还需要在OnLButtonDown里SetFocus();
      

  5.   

    在OnLButtonDown里添加SetFocus()是可以使cstatic暂时获得焦点,但是重绘时lpDrawItemStruct->itemState的值仍是0,我需要的是重绘时lpDrawItemStruct->itemState的值不为0
      

  6.   

    你用::GetFocus() == CSttatic的HWND,就可以知道你的CStatic有没有得到焦点了