目前共有23篇帖子。
【教程】让Win32程序拥有XP风格控件
1樓 巨大八爪鱼 2015-4-4 12:44
在Visual Studio中,默认创建的Win32 Project的对话框中,控件是Windows 2000风格的,很难看。


本教程主要讨论如何让Win32程序的控件拥有XP风格。最终效果如图:

(说实话我也不知道对话框中为何多出了一个α的图标。。。)
2樓 巨大八爪鱼 2015-4-4 12:46
【第一步】
打开Win32Project1.cpp文件(新建的工程貌似只有一个cpp文件),在这个文件的头部加上:
#pragma comment (lib, "comctl32.lib")
#include "commctrl.h"

其中最后一个也可以写成#include <commctrl.h>
3樓 巨大八爪鱼 2015-4-4 12:48
找到InitInstance函数,在函数中加入
InitCommonControls();
如图:

那个注释是我加上的= =
//Make sure this is here so you can use XP Styles
这个可以不加的。
4樓 巨大八爪鱼 2015-4-4 13:17
【第二步】
打开Win32Project1.rc文件

新建一个资源
5樓 巨大八爪鱼 2015-4-4 13:21
点Custom按钮

输入24,然后点OK
6樓 巨大八爪鱼 2015-4-4 13:22
在新建的空白文件中,粘贴如下内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- Copyright (c) Microsoft Corporation -->
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    name="Microsoft.Windows.Shell.notepad"
    processorArchitecture="amd64"
    version="5.1.0.0"
    type="win32"/>
<description>Windows Shell</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="*"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
        <requestedPrivileges>
            <requestedExecutionLevel level="asInvoker" uiAccess="false"/>
        </requestedPrivileges>
    </security>
</trustInfo>
<application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings>
        <dpiAware  xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
</application>
</assembly>


7樓 巨大八爪鱼 2015-4-4 13:24

然后在右下角的Properties(属性)模块中,把ID改成1,把Filename改成“工程名.manifest”,如:Win32Project1.manifest
8樓 巨大八爪鱼 2015-4-4 13:28
回复:7楼
注意:
这一步是先点击了(6楼所示截图)刚才新建的那个资源的内容区域,使光标落在那个区域之后,再到Properties(属性)模块中修改属性值。

当然也可以 选中 Resource View中的RT_MANIFEST(或24)下新建的资源,再在属性模块中改。反正目的是要把文件名改成“工程名.manifest”,资源名称改成1

9樓 巨大八爪鱼 2015-4-4 13:28
然后运行程序就行了。
10樓 巨大八爪鱼 2015-4-4 13:30

回復帖子

內容:
用戶名: 您目前是匿名發表
驗證碼:
 
 
©2010-2024 Arslanbar [手機版] [桌面版]
除非另有聲明,本站採用創用CC姓名標示-相同方式分享 3.0 Unported許可協議進行許可。