INITCOMMONCONTROLSEX
结构documentation提到以下内容:
ICC_STANDARD_CLASSES
加载一个内部User32控件类。用户控制 包括按钮,编辑,静态,列表框,组合框和滚动条。
我不明白这意味着什么,“按钮,编辑,静态,列表框,组合框”被认为是常用控件吗?!
我认为对此的解释如下:
这些控件有两个版本,一个版本位于 user32.dll ,另一个版本位于 comctl32.dll ,现在当我使用Visual Styles时(通过向我的程序添加清单文件),使用的版本将是 comctl32.dll 的版本,如果我使用了Visual Styles,那么我应该使用ICC_STANDARD_CLASSES
来调用InitCommonControlsEx()
这是对的吗?
答案 0 :(得分:3)
回到过去,在XP主题之前,标准的基本user32控件之间有所区别。按钮,编辑,静态,列表框和组合框。回到Windows的早期版本,这就是全部。
后来共同的控制措施出现了。列表视图,树视图,工具栏,状态栏,进度条,日期时间选择器等。您必须致电InitCommonControls
来初始化这些控件。
随着XP主题的出现,您现在必须调用InitCommonControlsEx
来注册所有控件,甚至是按钮,编辑等标准控件。但我并不认为它们是共同控制。对我而言,基本控件,按钮,编辑等,以及常用控件,列表视图,树视图等之间存在区别。但它并不是一个重要的区别。你真的不需要担心它。