我正在寻找学习使用Win32 / GDI API的好资源,或者使用Win32 API直接绘制和绘制到玻璃表格的任何内容。
当我使用Delphi时,我将其标记为Delphi或Visual C ++。您可以找到任何代码示例和文章,我们将不胜感激。 MSDN文章似乎没有写到这一点。
作为目标,让我们想象你想要: (a)重现Google Chrome的功能(标签作为玻璃框架的一部分) (b)重现MS Office 2010的功能(将MFC for VS 2010中的玻璃框保存按钮保存为“快速访问工具栏”(见下图)。
我没有使用MFC,但如果检查MFC源是一个很好的信息来源,我很想知道在MFC源或BCG原始源(我有两者)中的哪些地方实现了快速访问工具栏渲染/绘画代码。
更新:以下答案之一的相关neato链接显示了NC(非客户端)Paint消息,以及如何在玻璃框架上绘制时处理它,以及有关它的MSDN文章here。
答案 0 :(得分:20)
这是我的“Glass”书签文件夹的一个子集,是对该主题进行研究/搜索的批次的结果。我发现所有这些对于学习玻璃和解决各种问题都很有用。其中大部分包括Delphi代码,但我已经注意到它用于另一种语言。
答案 1 :(得分:6)
答案 2 :(得分:5)
我确定你找到了MSDN page about the DWM。它已经跳过很多主题和一些例子。一些“概述”文章有例子(如DWM Blur Behind Overview)。
不幸的是,除了文档之外,还有很少的好文章。您可以从Using glass on codeproject开始,然后查看detecting glass in delphi - 之后直接使用文档中的函数也不错。幸运的是,他们在练习中都非常直接。
答案 3 :(得分:2)
玻璃组件的良好网站,包括玻璃按钮:
答案 4 :(得分:0)