win32 / C对话框:组合框的“现代”外观/样式

时间:2010-10-31 01:24:34

标签: c winapi combobox coding-style dialog

我希望Win32 / C应用程序中的对话框(资源)具有“现代”外观/样式,特别是其组合框。通过“现代”,我的意思是“下拉列表”类型的组合框看起来像一个实心按钮,侧面只有一个小“箭头”图标,而不是“旧”外观:平面编辑框与单独的箭头按钮。在VS对话框编辑器中,组合框看起来“现代”。当我运行应用程序时,它们看起来“老”。如何强制对话中的“现代”风格?这是我试过的,徒劳无功:

#include "commctrl.h"  
#include "Uxtheme.h"  
setDia = CreateDialog(NULL, MAKEINTRESOURCE(IDD_DIA_SET), win, DialogProc);  
SetWindowTheme(setDia, L"Explorer", NULL);

我编写了一些Win32 / C ++应用程序,他们的对话框(也是资源)开箱即用的“现代”外观,没有做任何事情。 C和C ++是否有所不同?

1 个答案:

答案 0 :(得分:4)

您很可能必须通过清单指定正确版本的comctl32.dll,尤其是选择v.6(例如,6.0.2900.5512)。有关详细信息,请参阅以下MSDN文章: Enabling Visual Styles