我正在使用C#GDI +创建自定义控件。

快速说明...该控件在屏幕上显示为500像素,但可能包含50万像素的信息。因此,尽管我一次只显示500像素,但我显然需要在水平面中滚动(左右)。棘手的是,每个500px的位图块需要一段时间(介于100ms-1000ms之间)才能呈现。

所以我的计划是在内存中维护一个1500px的位图。即500px可见部分和500px可见区域的任一侧,并在用户滚动时异步绘制屏幕外部分。

我想要一些反馈,建议,批评或代码示例,以帮助我实现这一目标。这似乎很简单,但是经过几次初步测试后,证明它比人们想象的要困难得多。

谢谢。

最佳答案

除其他事项外,这种方法的有效性取决于用户将要移动的数量。如果用户进行小动作,然后停止考虑新信息,则可能会起作用。但是,如果用户来回晃动,您仍然会遇到问题。

您的应用程序是否适合逐步改善图像质量-即提供快速可用的图像,然后在用户停止考虑时对其进行改进?

10-07 13:21