繁体   English   中英

您可以在全屏DirectX层上绘制Winform吗?

[英]Can you make a Winform draw on top of full screen DirectX layer?

我有一个使用DirectX渲染3D的本地C ++应用程序。 该应用程序可以使用IDXGISwapChain :: SetFullscreenState()在窗口显示和全屏显示之间切换。
但是,我的某些UI在托管dll的.Net Winform中。

在窗口模式下,我只是调用.Net dll,然后打开了辅助Winform,因此有了两个窗口,即主要的本机MFC / DirectX和.Net Winform控件。

但是,当DirectX处于全屏状态时,是否可以将Winform显示在Direct X层上方? 可能吗?

仅设置Winform属性this.TopMost = true; 还不够。 Winform在Direct X层下。 我只想在整个屏幕上显示“我的” WinForm。

您可以将WinForm的DC复制到内存中的位图上,然后将其复制到DirectX渲染图上,然后将消息传递回WinForm。 但是,如果您尝试做很多事情,可能会很慢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM