我使用以下代码禁用单个控件上的主题:
SetWindowTheme(yourControl.Handle, "", "");
或只是
SetWindowTheme(yourControl.Handle, "explorer", "");
但过了一段时间,我需要恢复该控件上的原始Windows Vista / Seven主题。怎么办?我查找了一个“默认”名称而没有找到它,所有示例都引用了“”或“资源管理器”,这会禁用主题。
答案 0 :(得分:1)
来自SetWindowTheme
documentation
当pszSubAppName和pszSubIdList为NULL时,主题管理器将删除先前应用的关联。通过指定与任何节条目不匹配的空字符串(L“”),可以防止将视觉样式应用于指定的窗口。
请注意,NULL
和""
不是一回事。
您可以通过再次使用SetWindowTheme
值再次调用NULL
来恢复应用的旧主题:
SetWindowTheme(yourControl.Handle, NULL, NULL);