Windows mobile 双缓冲

Windows mobile 双缓冲,windows-mobile,compact-framework,Windows Mobile,Compact Framework,windows mobile 6.5 CE是否支持双缓冲?这完全取决于您的意思和位置。几乎所有的CE显示器驱动程序都使用双缓冲从视频内存绘制到显示器,以防止撕裂和伪影(我从来没有见过这样的驱动程序) 如果你问一些框架,比如Compact framework、MFC、Direct Show或其他什么,是否通过API支持它,那么我们需要知道你在说什么框架。这实际上取决于你的意思和位置。几乎所有的CE显示器驱动程序都使用双缓冲从视频内存绘制到显示器,以防止撕裂和伪影(我从来没有见过这样的驱动程序) 如

windows mobile 6.5 CE是否支持双缓冲?这完全取决于您的意思和位置。几乎所有的CE显示器驱动程序都使用双缓冲从视频内存绘制到显示器,以防止撕裂和伪影(我从来没有见过这样的驱动程序)


如果你问一些框架,比如Compact framework、MFC、Direct Show或其他什么,是否通过API支持它,那么我们需要知道你在说什么框架。

这实际上取决于你的意思和位置。几乎所有的CE显示器驱动程序都使用双缓冲从视频内存绘制到显示器,以防止撕裂和伪影(我从来没有见过这样的驱动程序)


如果你问一些框架,比如紧凑的框架,MFC,直接显示或者什么,通过API来支持它,那么我们需要知道你在谈论什么框架。

< P>如果你自己画控件,那么你可能想考虑执行你自己的双缓冲。 最近,我还没有充分了解WinCE的最新情况,我本以为他们最终会移植桌面上的双缓冲功能,但也许他们没有

基本上前提是只画一个图像,然后在一次拍摄中将该图像拼接到“真实”图形对象上

它是这样的“某物”(这来自内存,因此idk,如果语法完美):

然后使您自己的所有控件继承自此控件,并将绘制代码添加到DoPaint的覆盖中


你可能想把上面的代码只创建一次位图(cTor),处理大小调整事件,然后在调整大小上重新创建它,然后添加一些处理代码。当对象死亡时,处理位图。

如果你自己绘制控件,那么你可能需要考虑执行你自己的双缓冲。 最近,我还没有充分了解WinCE的最新情况,我本以为他们最终会移植桌面上的双缓冲功能,但也许他们没有

基本上前提是只画一个图像,然后在一次拍摄中将该图像拼接到“真实”图形对象上

它是这样的“某物”(这来自内存,因此idk,如果语法完美):

然后使您自己的所有控件继承自此控件,并将绘制代码添加到DoPaint的覆盖中


您可能希望对上述操作进行修改,只创建一次位图(ctor),处理调整大小事件,然后在调整大小时重新创建位图,然后添加一些处理代码,这样您就可以了。当对象死亡时处理位图。

当我在windows mobile中向下滚动时,位图的紧凑框架所有控件都会闪烁,因此我想知道是否有任何方法可以阻止它,谢谢advance@Dev.Windows你自己画这些控件吗?是的,我自己画控件当我在windows mobile中向下滚动我所有的控件都会闪烁,所以我想知道是否有任何方法可以阻止它,谢谢advance@Dev.Windows你自己画这些控件吗?是的,我自己画控件
public class DoubleBufferedControl : Control
{

    protected override OnPaint(object sender, PaintEventArgs e)
    {
        using(Bitmap bitmap = new Bitmap(Width, Height))
        {
            using(Graphics graphics = Graphics.FromImage(bitmap))
            {
                 DoPaint(sender, new PaintEventArgs(graphics));
                 e.Graphics.DrawImage(bitmap, 0, 0);
            }
        }
    }

    protected virtual DoPaint(object sender, PaintEventArgs e)
    {
         /* left empty for overrides */
    }

    protected override OnPaintBackground(object sender, PaintEventArgs e)
    {
         /* do nothing */
    } 
}