如何使用Windows 7 API,如Aero Glass、Jump List等。

6

我如何利用Windows 7的功能,例如Aero Glass、Jump Lists等。以及像跳转列表中的图标、跳转列表的颜色等小改变。是否有好的文章可以提供?

1个回答

11
请查看Windows API Code Pack:
http://code.msdn.microsoft.com/WindowsAPICodePack

Windows® API Code Pack for Microsoft® .NET Framework提供了一个源代码库,可用于从托管代码访问Windows 7和Windows Vista的某些功能。这些Windows功能今天在.NET Framework中对开发人员不可用。

此版本(v1.0.1)支持的各个特性是:

  • Windows 7任务栏
    o 跳转列表、图标叠加、进度条、选项卡缩略图和缩略图工具栏
    • Windows Shell
      o Windows 7 Libraries
      o Windows Shell Search API支持
      o Explorer浏览器控件
      o 一组Shell命名空间实体
      o Windows Shell属性系统
      o 拖放Shell对象
      o Windows Vista和Windows 7常见文件对话框,包括自定义控件
      o 已知文件夹和非文件系统容器
    • DirectX
      o Direct3D 11.0、Direct3D 10.1 / 10.0、DXGI 1.0 / 1.1、Direct2D 1.0、DirectWrite、Windows Imaging Component (WIC) APIs
    • Windows Vista和Windows 7任务对话框
    • Sensor Platform APIs
    • 扩展语言服务API
    • 电源管理API
    • 应用程序重启和恢复API
    • Network List Manager API
    • Command Link控件和系统定义的Shell图标

1
@Zyphrax(在SO上另一个帖子中发表的评论的重复):正如你所说,W7 API Code Pack公开的一些功能是与Vista兼容的。我可以肯定地说,TaskBarManager功能在Vista中无法使用:基于Visual Studio 2010 beta 2,在那里我能够成功编译引用了W7 API的CodeProject示例[1],但无法运行该项目,因为:“TaskbarManager.IsPlatformSupported”始终返回false。[1] codeproject.com/KB/statusbar/Clipz.aspx - BillW
API代码包是一组用于非托管Windows API调用的托管类。它严重依赖于用户的操作系统(和支持的API调用),这是有道理的。由于新任务栏在Windows Vista中没有实现,因此无法在Vista上使用TaskBarManager。 - Yvo
那我是不是只需把正确的项目导入我的解决方案中?我以为它会像汇编一样。 - Mohit Deshpande
您可以复制代码的一部分并将其集成到您的项目中。或者只需编译所需的项目,并从您的项目中引用那些 DLL。 - Yvo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接