我希望我的Win32/C应用程序中的对话框(资源)具有“现代”的外观/风格,特别是它的组合框。所谓“现代”,我的意思是“下拉列表”-type组合框看起来像一个实心按钮,只是在侧面有一个小的“箭头”图标,而不是“旧”的外观:扁平的编辑框有一个单独的箭头按钮。在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++语言带来了不同?
发布于 2010-10-31 01:27:25
您很可能必须通过清单指定comctl32.dll的正确版本,特别是选择v6(例如,6.0.2900.5512)。有关更多信息,请参阅以下MSDN文章:Enabling Visual Styles
https://stackoverflow.com/questions/4061441
复制相似问题