gpt4 book ai didi

c - 虚拟 Listview 控件的(主)缓冲区中应该有多少行?

转载 作者:太空宇宙 更新时间:2023-11-04 03:08:44 25 4
gpt4 key购买 nike

虚拟 Listview 控件的(主)缓冲区中应该有多少行?

我正在为 Win32 API 编写一个纯“c”的应用程序。有一个到数据库的 ODBC 连接,它将检索项目(实际上是行)。

MSDN 示例代码暗示了一个固定大小的缓冲区 30 用于结束缓存(这几乎肯定不是最佳的)。我觉得端缓存和主缓存应该大小一样。

我的想法是缓冲区应该大于 ListView 一次可以显示的最大项目数。我想这可以在每次调整 Listivew 大小时重新计算吗?

或者,使用较大的固定值是否更好。如果是,该值是多少?

最佳答案

使用 ListView_ApproximateViewRect(或 LVM_APPROXIMATEVIEWRECT 消息)获取 View 矩形高度。

使用 ListView_GetItemRect(或 LVM_GETITEMRECT 消息)获取项目的高度。

将 View 矩形高度除以项目的高度,以获得可以适合您的 View 的项目数。对每个大小事件进行此计算。

然后相应地创建缓冲区。

关于c - 虚拟 Listview 控件的(主)缓冲区中应该有多少行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com