5

任何人都对 7 或 Vista 上的 Delphi 和 Windows Aero 有任何好的资源吗?

我们即将将 Windows 7 添加到我们的公司,并希望确保我们的内部应用程序尽可能适合使用。

使用 Delphi 2010,我可以添加 Glass Frame,并且菜单栏继承了 Aero 外观,但是 TabControls、Grids 和 Status 栏都显得过时了。

有什么帮助吗?

4

3 回答 3

11

我们包括我们自己的清单资源,因为据我所知,Delphi 不包括 Windows 7(和 Vista?)的新清单添加。在http://msdn.microsoft.com/en-us/library/dd371711(VS.85).aspx这里这里的帮助下:

使用单行创建文件“mymanifest.rc”

1 24 "my.manifest"

并创建一个名为 my.manifest 的文件,如下所示

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity type="win32" name="OUR COMPANY NAME" version="3.1.0.0" processorArchitecture="*"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" publicKeyToken="6595b64144ccf1df" language="*" processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
        </requestedPrivileges>
    </security>
  </trustInfo>
  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
    <application>
      <!--The ID below indicates application support for Windows Vista -->
      <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
      <!--The ID below indicates application support for Windows 7 -->
      <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
    </application>
  </compatibility>
</assembly>

然后将 mymanifest.rc 添加到您的项目中并关闭“启用运行时主题”选项,因为这会做同样的事情(但不太灵活)。可以更改“requestedExecutionLevel”部分以适应应用程序的 UAC 需求。

为我们工作。

于 2009-11-17T14:40:06.543 回答
7

我同意使用启用运行时主题项目选项应该使大多数控件主题感知。

TMS 组件一直在更新以包含最新的主题,包括 Windows 7,并且Raize 组件允许您使用透明度、渐变和主题感知颜色。

于 2009-11-17T13:51:20.057 回答
-2

只需将单位添加XPManUses列表中。

于 2010-06-24T11:38:16.850 回答