我在用codejock Xtreme Toolkit Pro v9.60 时,提供的例子的check 按钮和radio按钮默认都是xp风格的,就如此页面发表新主题时的按钮,大家可以看这个页面的下面。我用vc6.0编译出来却不是这样的风格。我的操作系统是 xp的,请问有谁知道是什么原因嘛?

解决方案 »

  1.   

    VC6.0的确不能自动生成XP效果的按钮样式。
    1、需要一个.manifest文件(假设为yourproject.manifest)
    2、需要在.rc文件中添加如下代码:
       IDR_MANIFEST   RT_MANIFEST   "res\\yourproject.manifest"
    3、需要在resource.h文件添加如下代码:
       #define IDR_MANIFEST   1
    4、需要在Windows XP操作系统上运行
    如果你使用VS2003的话,IDE会自动给你生成.manifest文件,只需要2、3、4步即可。另外codejock 11.2.2都有了。
    我用的是VS2003+codejock 11.2.2欢迎交流!
      

  2.   

    .manifest文件制作步骤:
    做一个xml文件:yourproject.manifest,内容如下:<?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="CompanyName.ProductName.xpstyle"
        type="win32"
    />
    <description>Your application description here.</description>
    <dependency>
        <dependentAssembly>
            <assemblyIdentity
                type="win32"
                name="Microsoft.Windows.Common-Controls"
                version="6.0.0.0"
                processorArchitecture="X86"
                publicKeyToken="6595b64144ccf1df"
                language="*"
            />
        </dependentAssembly>
    </dependency>
    </assembly>
      

  3.   

    再要注意到是:
    5、程序初始化时,运行
    InitCommonControls();
    6、在项目的属性页的命令行加入 ComCtl32.lib;
        程序中加入  #include "commctrl.h"声明:
    在VS2003中只需要2、3、4点即可。
    至于VC6,我只能想到这6点,具体能否实现成功,我没有试过,不能确定。请楼主自行研究!