有谁知道如何以编程方式在屏幕上移动我的SDL.net视频表面?
Surface videoContext = Video.SetVideoMode(1024, 768, 32, false, false, false, true, true);
var a = System.Windows.Forms.Control.FromHandle(Video.WindowHandle);
var b = System.Windows.Forms.NativeWindow.FromHandle(Video.WindowHandle);
我找不到任何属性Surface
或Video
哪些属性可以完成这项工作,并且FromHandle
正在返回 Null。
有任何想法吗?
更新:
我已经看过这段代码,但无法计算出等效的 C# 实现。任何人都可以帮忙吗?
#ifdef WIN32
#include <SDL_syswm.h>
SDL_SysWMinfo i;
SDL_VERSION( &i.version );
if ( SDL_GetWMInfo ( &i) ) {
HWND hwnd = i.window;
SetWindowPos( hwnd, HWND_TOP, x, y, width, height, flags );
}
如果做不到这一点,在我的 c# 项目中包含一些 c++ 需要做多少工作?
谢谢。