加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

用于在Windows Aero Glass(DWM,GDI,GDI)上绘制所有Win32程序员的

发布时间:2020-12-13 21:02:31 所属栏目:Windows 来源:网络整理
导读:我正在寻找用于学习使用Win32 / GDI API的好资源,或者将其直接使用Win32 API绘制和绘制为玻璃形式的任何代替。 当我使用Delphi时,我把它标记为Delphi或Visual C。任何您可以找到的代码示例和文章将不胜感激。 MSDN文章似乎没有写出来。 作为一个目标,让我
我正在寻找用于学习使用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。

这是我的“玻璃”书签文件夹的一个子集,这是对这个主题的大量研究/搜索的结果。我发现所有这些都有助于了解玻璃和解决各种问题。其中大部分包括Delphi代码,但我注意到了另一种语言。

平原玻璃链接

> Using translucent windows with Delphi:在Delphi中使用Glass格式的介绍(从非常基础的)
> Custom drawing on glass:涵盖如何在窗口的玻璃区域绘制位图或其他图像。涵盖alpha通道等,很好的概述
> Using glass in a VC++ project:涵盖翻转玻璃,绘图文字,处理通知等 – 一个很好的一般介绍,它是如何工作的。许多底层的细节都是由VCL处理的(例如,GlassFrame property和TForm的内部部件都会照顾很多),但是了解在API层面上如何实现它的基础知识非常有用
> How to draw on the non-client area:这显示了如何在标题栏中绘制Office的工具栏。 .Net代码,但可翻译
> Setting up a custom title bar:非常详细的文章关于非客户端绘图(在Delphi中,所以Delphi代码)。随之而起的是part 2,它完全覆盖整个窗口,并自己模仿标准标题栏。这两篇文章将让您按照您在问题中的要求模仿Office和Chrome
> How to set up various VCL controls to work best on a glass area:VCL不支持玻璃。你经常会得到工件,或控制根本没有正确绘制,无论你做什么尝试和解决它。本文列出了基本的VCL视觉组件(标签,按钮,进度条等)以及为每个组件设置什么,以便它们完美绘制,或至少“尽可能”放置在玻璃区域上

高级或切向相关:

> How desktop composition works,with GDI and DirectX surfaces
> List of desktop manager APIs(只有一些是航空相关的)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读