1

我有一个几乎完整的 C# winform 应用程序(它很大,所以我不能从头开始重写它),我想向它添加一个 sdl.net 窗口,以便显示我的应用程序在复杂的图形方式(sdl.net 窗口必须以某种方式从我的应用程序中获得稳定的数据流,所以我不能只做另一个项目)。

问题是我该怎么做?这种事情有什么常见的做法吗?或者做类似事情的教程?

简而言之,我可以将 sdl.net 窗口添加到 C# winform 应用程序中,如果可以,那么如何添加?

4

1 回答 1

0

您可以创建自己的 sdl.net 窗口类,该类将SdlDotNet.Graphics.Video.SetVideoMode()在创建时使用该方法,在内部处理图形操作并提供从您的 winform 应用程序调用的公共方法。

像这样的东西:

using System.Drawing;
using SdlDotNet.Graphics;

public class SdlWindow
{
    private Surface screen; // the display Surface

    /* ctor */
    public SdlWindow(Size size)
    {
        screen = Video.SetVideoMode(size.Width, size.Height);   // create a new sdl Surface and its own window container
        Video.WindowCaption = "Sdl Window";
    }

    /* your methods */
    public void DrawRectangle(Rectangle rect)
    {
        screen.Fill(rect, Color.Red);
        screen.Update();
    }

    /* cleanup a bit */
    public void Dispose()
    {
        if (screen != null)
            Video.Close();
    }
}

不要忘记在项目中添加对 SdlDotNet.dll 库的引用。

希望这可以帮助!

于 2013-04-22T15:28:24.793 回答