作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试创建一个简单的透明窗口,我可以在其中使用 Direct2D 进行绘图。
到目前为止我做了什么:
我只是不知道如何使窗口透明。如果您能指出我的错误,我将不胜感激
最佳答案
这里是如何使用 DirectComposition API 实现的
俄语:http://www.oszone.net/25395/
英语:https://msdn.microsoft.com/magazine/dn745861.aspx
基本上作者所做的是
设置 WS_EX_NOREDIRECTIONBITMAP 扩展样式以删除 DWM 的重定向位图。窗口的内容现在是空的。
创建 DirectComposition 设备
创建组合交换链(而不是 hwnd 交换链)
将一个具有 SwapChain 作为内容的视觉作为根视觉。
使用 Direct2D API 渲染到 SwapChain。
它也适用于 WS_EX_TRANSPARENT | WS_EX_LAYERED | WS_EX_TOPMOST
用于创建事件透明覆盖。
关于c++ - ID2D1HwndRenderTarget 总是有黑色背景而不是透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18836921/
我是一名优秀的程序员,十分优秀!