Win32 / Direct2D - 如何渲染无限滚动列表框

时间:2011-01-07 00:12:35

标签: c++ winapi controls direct2d directwrite

我正在用C ++构建一个Win32应用程序,需要在Twitter上显示一个相对简单的项目列表。列表中的每个项目都包括作者和一些图标上的推文文本。在OS X上沿着Twitter客户端进行平滑滚动和加速会很好(可能是使用Core Animation完成的)。我只需要支持Windows 7。

我假设我需要创建某种类型的所有者绘制列表框,它被虚拟化以允许很多项目。是否有一些例子可以做类似的事情?

我一直在考虑使用Direct2D和DirectWrite,但这些似乎不适合控制开发。我假设这些新技术需要我实现命中测试,因为我负责渲染每个项目,而且我还必须编制物理来滚动列表。继续研究这个是否明智?有没有人得到Direct2D的例子作为所有者绘制的Win32控件的替代品。

1 个答案:

答案 0 :(得分:1)

Direct2D是一个非常简单易用的API。我确实在其中编写了自己的控件(只有像按钮这样的相对简单的控件)并且它根本不是非常困难。我发现它比研究WinAPI控件更容易,这是肯定的。当然,Direct2D旨在用于高性能2D渲染,而不一定是交互式控件。