我正在使用托管dx9编写MDI应用程序。
当我创建设备时,我传入一个控件。
如果我传入其中一个MDI子窗口(或者更具体地说,是MDI子窗口中的控件),一切都会很好。我可以生成新的子MDI窗口并单独绘制到每个窗口。我可以关闭任何新窗口,没问题。但是,如果我关闭原始子窗口,Device.Clear()会抛出异常(空引用异常 - 已释放设备)。
或者,我可以将Form1传递给Device构造函数。现在我可以打开和关闭尽可能多的子窗口而不会出现异常,但现在渲染分辨率不是很正确 - 图形不像我将子窗口传递给Device构造函数那样清晰。
所以我的第一个问题是: 我可以在构建设备时指定分辨率吗? 我应该将哪个控件/窗口传递给Device构造函数? 我究竟做错了什么? :)
由于
添
答案 0 :(得分:1)
您应该知道Managed DirectX已被弃用,Microsoft将永远不会再次更新。您应该使用SlimDX代替。
答案 1 :(得分:0)
当使用表单作为传递给设备构造函数的控件时,我无法使解析工作,所以我重新设置了设备,如果它被处理掉了。