2011-03-29 59 views
0

我发现的当前方式是制作一个位图并将其绘制到一个图片框中,但在试图滚动面板时它非常缓慢( picturebox在一个可滚动面板内)。需要一种方法来显示图像并在Visual C++中绘制图像

有没有更好的方法来实现这个功能?

+0

我知道Winforms,有一种方法来指定窗体应该双缓冲。我假设这个属性在Win32 API中有路由,所以它也可以从MFC访问。 – jonsca 2011-03-29 13:32:44

+0

它不应该慢。为什么它在你的*程序中很慢从你的问题是不可想象的。 – 2011-03-29 13:47:16

+0

难道是我的形象相当大?大约1500x2000px – Atomble 2011-03-29 14:00:50

回答

0

只有在创建图片框时才加载位图,然后将其保留在内存中,直到图片框被销毁。每次调用OnPaint时加载位图都会破坏性能。

如果您收到WM_PAINT消息并且没有任何更改,请确保您没有重新绘制位图。

0

那个图像大小,1500x2000会很慢。如何将其大小调整为25%以显示预览,并且如果用户希望看到整个图像,则可能需要一些时间才能提醒他们。

相关问题