所有Win32程序员在Windows Aero Glass(DWM、GDI、GDI+;)上绘图的文档和API示例
我正在寻找学习使用Win32/GDIAPI或任何替代它的东西的好资源,以便直接使用Win32 API绘制玻璃窗体 当我使用Delphi时,我把它标记为Delphi或Visual C++。如果您能找到任何代码示例和文章,将不胜感激。MSDN的文章似乎并没有写这方面的内容 作为一个目标,让我们设想您想要: (a) 复制Google Chrome的功能(标签作为玻璃框架的一部分) (b) 重现MS Office 2010的功能(玻璃框上的保存按钮,在VS 2010的MFC中称为“快速访问工具栏”(参见下图) 我没有使用MFC,但如果检查MFC源是一个很好的信息源,我很想知道MFC源或BCG原始源(我都有)在哪里实现了快速访问工具栏渲染/绘制代码 更新:下面答案之一的相关neato链接显示了NC(非客户端)绘制消息,以及在玻璃框架上绘制时如何处理它,以及一篇有关它的MSDN文章。我相信您已经找到了。它有许多主题和一些示例。其中的一些“概述”文章有示例(如) 不幸的是,除了文档之外,很少有好文章。你可以从a开始,然后看一看,直接使用文档中的函数并不太糟糕。幸运的是,它们在实践中都非常简单。在Vista/Windows 7下绘制自定义标题栏可能会让你感兴趣 示例图像:所有Win32程序员在Windows Aero Glass(DWM、GDI、GDI+;)上绘图的文档和API示例,windows,delphi,visual-c++,windows-7,aero-glass,Windows,Delphi,Visual C++,Windows 7,Aero Glass,我正在寻找学习使用Win32/GDIAPI或任何替代它的东西的好资源,以便直接使用Win32 API绘制玻璃窗体 当我使用Delphi时,我把它标记为Delphi或Visual C++。如果您能找到任何代码示例和文章,将不胜感激。MSDN的文章似乎并没有写这方面的内容 作为一个目标,让我们设想您想要: (a) 复制Google Chrome的功能(标签作为玻璃框架的一部分) (b) 重现MS Office 2010的功能(玻璃框上的保存按钮,在VS 2010的MFC中称为“快速访问工具栏”(参见
此外,这些旧文章可能会帮助您:
- :在Delphi表单中使用Glass的良好介绍(从最基本的方面)
- :介绍如何在窗口的玻璃区域绘制位图或其他图像。还介绍alpha通道等,概述良好
- :包括打开玻璃、绘制文本、处理通知等-这是对其工作原理的一个很好的一般性介绍。VCL处理了很多底层细节(例如和TForm内部处理了很多),但了解如何在API级别实现它的基础知识非常有用
- :这显示了如何在标题栏中绘制类似Office工具栏的东西。.Net代码,但可翻译
- :关于非客户端区域绘图的非常详细的文章(在Delphi中,所以是Delphi代码)。接下来是,它演示了完全接管整个窗口并自己模拟标准标题栏。这两篇文章将让您模拟Office和Chrome,正如您在问题中所要求的那样
- :VCL不能很好地支持玻璃。无论您如何尝试解决它,您经常会得到工件或控件根本无法正确绘制。本文列出了基本的VCL视觉组件(标签、按钮、进度条等)以及为每一个设置什么,以便它们完美地绘制,或者当它们被放置在玻璃区域时,至少“尽可能好”
- (只有部分与航空相关)
- 玻璃组件的良好网站,包括玻璃按钮: