2016-08-31 5 views
0

Я пытаюсь обработать уведомление о трекболе, но по какой-то причине мой компилятор GCC жалуется, что идентификатор TRBN_THUMBPOSCHANGING не объявлен.WinApi Commctrl идентификатор трекбара uneclared

Я включил заголовок,

#include <commctrl.h> 

и инициализируется элементы управления,

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

Я также попытался ICC_BAR_CLASSES и несколько других, а не на Win95 один.

Кроме того, я компиляции с помощью летучей мыши файл, включая эту команду

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

не Creating в TrackBar было никаких проблем, она показывает, и может управляться. Что мне не хватает?

ответ

2

TRBN_THUMBPOSCHANGING доступен в Windows Vista и выше. Чтобы использовать его, вы должны установить _WIN32_WINNT в минимальную поддерживаемую версию вашего приложения до включения любых файлов заголовков. Это может быть сделано в коде

#define _WIN32_WINNT 0x0600 // Windows Vista 

или в командной строке вашего компилятора(). Последнее рекомендуется предотвращать введением каких-либо несоответствий. См. Using the Windows Headers.