2016-08-31 48 views
0

我試圖處理trackbar通知,但由於某種原因,我的GCC編譯器抱怨TRBN_THUMBPOSCHANGING標識符未聲明。WinApi Commctrl trackbar標識符undeclared

我已經包括了頭,

#include <commctrl.h> 

和初始化的控件,

INITCOMMONCONTROLSEX icex; 
icex.dwICC = ICC_LISTVIEW_CLASSES | ICC_WIN95_CLASSES; 
InitCommonControlsEx(&icex); 

我自己也嘗試ICC_BAR_CLASSES和其他幾個人,而不是一個WIN95。

而且我通過bat文件編譯包括該命令

gcc foodplaner.o resources.o sqlite3.o -lgdi32 -lcomctl32 -o foodplaner.exe 

創建的TrackBar是沒有問題的,它顯示了和可以控制的。 我錯過了什麼?

回答

2

TRBN_THUMBPOSCHANGING在Windows Vista及更高版本中可用。要使用它,必須在包含任何頭文件之前將_WIN32_WINNT設置爲應用程序的最低支持版本。這可以在代碼

#define _WIN32_WINNT 0x0600 // Windows Vista 

或您的編譯器的命令行()。後者建議防止引入任何不匹配。詳情請參閱Using the Windows Headers