首页 > 代码库 > InitCommonControlsEx()

InitCommonControlsEx()

参见:http://blog.sina.com.cn/s/blog_4fcd1ea30100qlzp.html

MFC通用控件初始化 

*************************************************************************************

MFC工程中,在InitInstance()函数(一般在工程名.cpp文件中)中有这样一段代码:
*************************************************************************************
  // 如果一个运行在 Windows XP 上的应用程序清单指定要  

  // 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式,  

  // 则需要 InitCommonControlsEx()。否则,将无法创建窗口。   

  INITCOMMONCONTROLSEX InitCtrls;
  InitCtrls.dwSize = sizeof(InitCtrls);
  // 将它设置为包括所有要在应用程序中使用的
公共控件类。
  InitCtrls.dwICC = ICC_WIN95_CLASSES;
  InitCommonControlsEx(&InitCtrls);
**************************************************************************************
InitCommonControlsEx()

作用:通用控件初始化

原型:BOOL WINAPI InitCommonControlsEx(LPINITCOMMONCONTROLSEX lpInitCtrls);

参数:lpInitCtrls参数指向一个INITCOMMONCONTROLSEX结构:

   typedef struct tagINITCOMMONCONTROLSEX {
    DWORD dwSize;   // 结构长度
    DWORD dwICC;   // 需要初始化的类
   } INITCOMMONCONTROLSEX, *LPINITCOMMONCONTROLSEX
说明:ICC_WIN95_CLASSES标识为ICC_LISTVIEW_CLASSES、ICC_BAR_CLASSES等的组合,定义如下:
  

********************************************commctrl.h**********************************************************

WINCOMMCTRLAPI void WINAPI InitCommonControls(void);#if (_WIN32_IE >= 0x0300)typedef struct tagINITCOMMONCONTROLSEX {    DWORD dwSize;             // size of this structure    DWORD dwICC;              // flags indicating which classes to be initialized} INITCOMMONCONTROLSEX, *LPINITCOMMONCONTROLSEX;#define ICC_LISTVIEW_CLASSES   0x00000001 // listview, header#define ICC_TREEVIEW_CLASSES   0x00000002 // treeview, tooltips#define ICC_BAR_CLASSES        0x00000004 // toolbar, statusbar, trackbar, tooltips#define ICC_TAB_CLASSES        0x00000008 // tab, tooltips#define ICC_UPDOWN_CLASS       0x00000010 // updown#define ICC_PROGRESS_CLASS     0x00000020 // progress#define ICC_HOTKEY_CLASS       0x00000040 // hotkey#define ICC_ANIMATE_CLASS      0x00000080 // animate#define ICC_WIN95_CLASSES      0x000000FF#define ICC_DATE_CLASSES       0x00000100 // month picker, date picker, time picker, updown#define ICC_USEREX_CLASSES     0x00000200 // comboex#define ICC_COOL_CLASSES       0x00000400 // rebar (coolbar) control#if (_WIN32_IE >= 0x0400)#define ICC_INTERNET_CLASSES   0x00000800#define ICC_PAGESCROLLER_CLASS 0x00001000   // page scroller#define ICC_NATIVEFNTCTL_CLASS 0x00002000   // native font control#endif#if (_WIN32_WINNT >= 0x0501)#define ICC_STANDARD_CLASSES   0x00004000#define ICC_LINK_CLASS         0x00008000#endif // (_WIN32_WINNT >= 0x0501)WINCOMMCTRLAPI BOOL WINAPI InitCommonControlsEx(const INITCOMMONCONTROLSEX *picce);#endif      // _WIN32_IE >= 0x0300

 

************************************************************************************************************************

InitCommonControlsEx()