我正在为Win7 +编程并使用Direct2D进行绘图。 UpdateLayeredWindow需要一个HDC,这意味着我最好创建一个WICRenderTarget(不是GPU加速)。有没有办法在不使用UpdateLayeredWindow的情况下制作半透明窗口?
答案 0 :(得分:0)
只有两个用于渲染分层窗口的API函数:UpdateLayeredWindow()
和SetLayeredWindowAttributes()
。
UpdateLayeredWindow()
要求您将窗口内容呈现给您自己的内存中位图HDC
,操作系统随后会在需要时显示该位图。
SetLayeredWindowAttributes()
依赖于传统的WM_PAINT
模型,要求您渲染到操作系统提供的HDC
,而是将其实现为内存中的位图HDC
操作系统在渲染完成后应用效果。