图片框.刷新缓慢的问题

本文关键字:问题 缓慢 刷新 | 更新日期: 2023-09-27 18:03:56

我用c#编写了一个俄罗斯方块游戏。我用下面的代码在picturebox中绘制形状。

graphics g
g = pictureBox1.CreateGraphics();

我正在绘制形状的下一步,通过计时代码每秒钟清理一次。我的问题是:它的工作缓慢picturebox.refresh()命令和扭曲的显示。我该怎么办?

我尝试了下面的函数。但是,这行不通。我也有同样的问题。

public void EnableDoubleBuffering()
    {
        // Set the value of the double-buffering style bits to true.
        this.SetStyle(ControlStyles.DoubleBuffer |
           ControlStyles.UserPaint |
           ControlStyles.AllPaintingInWmPaint,
           true);
        this.UpdateStyles();
    }

图片框.刷新缓慢的问题

你正在使用GDI绘制图片(基本上是使用软件渲染游戏图像)。与普通游戏相比,这将是缓慢的,因为大多数游戏使用DirectX或OpenGL在硬件层面上非常快地将数据blit到显卡。我建议你学习微软XNA并使用XNA编写游戏,它是基于c#的,并提供了一个很好的内容管道去做你想做的事情。

我也遇到了同样的问题。解决方案是,你必须在另一个位图中绘制新图片,当它完成时,在你的图片框中绘制它。