如何获取系统样式的菜单 如题,button,edit等控件显示出来的风格能因系统样式而异。这样像我这样对界面要求不是很高的人来说实在是一大幸事。 望那位大虾能出来指点一下,以高分奉上。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 HTHEME GetWindowTheme( HWND hWnd); 我的方法跟你们有所不同,是通过加载资源的方式,而且取名必须为资源类型名称好像必须为24,单个对象名称为1,导入的对象名为default.bin 里面的内容为<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="Microsoft.Windows.My" type="win32" /> <description>在此说明应用程序</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly> 哎,我还以为你要表达个啥意思呢你那玩意儿就是个 Windows 主题的 XML 描述。你要做过最简单的汉化的话,exeScope 有个功能,增加 XP 样式,就是添加的你说的这段东西。当然,在程序里面,你没必要导入啥的这么麻烦,直接把下面这一段代码粘贴到你的 stdafx.h 的最下面,重新编译就是 Windows 当前主题的效果了#ifdef _UNICODE#if defined _M_IX86#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")#elif defined _M_IA64#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")#elif defined _M_X64#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")#else#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")#endif#endif 我请问一下,我有这么个程序,我不知道程序的资源放在哪里好 我想把字符 \ 在字符串中显示出来, 我下了个skinmagic,但是说明有点不明白,谁讲一下 如何实现文件图标的修改 请教各位如何在DLL里导出类以及使用?(100分) Windows记事本程序的一个bug? yysh请进来零分 playsound的疑问 MFC 读取ini文件数据 请问哪儿有较好的C++书籍下载? 在小屏幕上显示提示框,一般用什么字体?比较好看? 以用SendMessage获取到一个listview当前的选中项吗?
);
是通过加载资源的方式,而且取名必须为资源类型名称好像必须为24,单个对象名称为1,
导入的对象名为default.bin
里面的内容为<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="Microsoft.Windows.My"
type="win32"
/>
<description>在此说明应用程序</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
processorArchitecture="X86"
publicKeyToken="6595b64144ccf1df"
language="*"
/>
</dependentAssembly>
</dependency>
</assembly>
你那玩意儿就是个 Windows 主题的 XML 描述。
你要做过最简单的汉化的话,exeScope 有个功能,增加 XP 样式,就是添加的你说的这段东西。当然,在程序里面,你没必要导入啥的这么麻烦,
直接把下面这一段代码粘贴到你的 stdafx.h 的最下面,重新编译就是 Windows 当前主题的效果了#ifdef _UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif