"BUTTON"是一个共同控制吗?

Jam*_*mes 5 c winapi

INITCOMMONCONTROLSEX结构文档提及以下内容:

ICC_STANDARD_CLASSES

加载一个内在的User32控件类.用户控件包括按钮,编辑,静态,列表框,组合框和滚动条.

我不明白这意味着什么,"按钮,编辑,静态,列表框,组合框"被认为是常见的控件?!


我认为对此的解释如下:

这些控件有两个版本,一个版本位于user32.dll中,另一个版本位于comctl32.dll中,现在当我使用Visual Styles时(通过向我的程序添加一个清单文件),使用的版本将是的COMCTL32.DLL,如果我使用视觉样式那么我应该叫INITCOMMONCONTROLSEX()ICC_STANDARD_CLASSES.

它是否正确?

Dav*_*nan 3

回到过去,在 XP 主题出现之前,标准的基本 user32 控件之间存在着区别。按钮、编辑、静态、列表框和组合框。回到 Windows 的早期版本,这就是全部。

后来出现了通用控件。列表视图、树视图、工具栏、状态栏、进度栏、日期时间选择器等。您必须调用InitCommonControls来初始化这些控件。

随着XP主题的出现,你现在必须调用InitCommonControlsEx来注册所有控件,甚至是按钮、编辑等标准控件。但我不认为它们是通用控件。对我来说,基本控件、按钮、编辑等与通用控件、列表视图、树视图等之间存在区别。但这并不是一个真正重要的区别。你真的不需要担心它。