正在阅读:不用Hook也能实现方面快捷的换肤功能不用Hook也能实现方面快捷的换肤功能

2004-02-14 09:34 出处:PConline 作者:checkyvc6/CSDN 责任编辑:linjixiong

   HWND m_hDlg;

  
  public:
   //记录系统中所有每一个对话框窗口和其对应的LxpSkin类
   static CMap< HWND, HWND, CLxpSkin* , CLxpSkin*>m_mapSkin;

   static BOOL InstallSkin(HWND hDlg);    

   static void UnInstallSkin(HWND hDlg);
  };

  使用方法如下:
  当做完上面的类之后你要做的就是在每个Dialog的OnInitDialog里面写上:CLxpSkin::InstallSkin(

  m_hWnd)
  在OnDestroy()里面写上CLxpSkin::UnInstallSkin(m_hWnd);

  对应的Cpp文件如下:
  CMap< HWND, HWND, CLxpSkin*, CLxpSkin*>CLxpSkin::m_mapSkin;
  CLxpSkin::CLxpSkin(HWND hDlg):m_btnList(10),m_hDlg(hDlg)
  { 
 
  }
  CLxpSkin::~CLxpSkin()
  {
   POSITION pos=m_btnList.GetHeadPosition();
   while(pos != NULL)
   {
    delete m_btnList.GetNext(pos);
   }
   pos=m_edtList.GetHeadPosition();
   while(pos != NULL)
   {
    delete m_edtList.GetNext(pos);
   }
   pos=m_lineList.GetHeadPosition();
   while(pos != NULL)
   {
    delete m_lineList.GetNext(pos);
   }
   pos=m_cmbList.GetHeadPosition();
   while(pos != NULL)
   {
    delete m_cmbList.GetNext(pos);
   }
   pos=m_chkList.GetHeadPosition();

键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品