程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> LWA_COLORKEY undeclared identifier 的解決辦法

LWA_COLORKEY undeclared identifier 的解決辦法

編輯:關於C++
<pre class="cpp" name="code">SetWindowLong(this->GetSafeHwnd(),   
              
        GWL_EXSTYLE,   
              
        GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000); </pre><br>  
<pre></pre>  
<pre class="cpp" name="code">HINSTANCE hInst = LoadLibrary("User32.DLL");   
          
    if(hInst)   
              
    {   
              
           typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD);   
                 
           MYFUNC fun = NULL;   
                 
           //取得SetLayeredWindowAttributes函數指針   
                 
           fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");   
                 
           if(fun)  
           {  
               //fun(this->GetSafeHwnd(),0,129,2);   
                fun(this->GetSafeHwnd(),GetSysColor(COLOR_BTNFACE), 129, LWA_COLORKEY);   
           }  
                 
           FreeLibrary(hInst);   
    }</pre>  
<p><br>  
使用以上方法實現半透明窗口時,</p>  
<p>編譯時輸出如下:</p>  
<p>error C2065: 'LWA_COLORKEY' : undeclared identifier</p>  
<p> </p>  
<p>明明引入了相關的頭文件:#include "WinUser.h",怎麼還會提示'LWA_COLORKEY'未定義呢?</p>  
<p>查看頭文件件中的定義發現,是條件定義的問題;</p>  
<p> </p>  
<p>在:#include "WinUser.h"之前添加:#define _WIN32_WINNT 0x0502</p>  
<p>問題解決;</p>

作者:csdn博客 微wx笑

返回欄目頁:http://www.bianceng.cn/Programming/cplus/

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved