绘制大量图形列表

guojiang3552 2017-04-14 02:19:35


如图,fontlab绘制大量字符图形,还可以轻松的滚动,而我自己尝试,达到3千就非常卡,有谁知道其原理,谢谢
...全文
181 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2017-04-19
  • 打赏
  • 举报
回复
预先绘制好整张图, 显示时仅BitBlt
zgl7903 2017-04-19
  • 打赏
  • 举报
回复
根据滚动位置和窗口大小 仅绘制可以范围数据
赵4老师 2017-04-19
  • 打赏
  • 举报
回复
引用 7 楼 guojiang3552 的回复:
[quote=引用 6 楼 zhao4zhong1 的回复:] 预先绘制好整张图, 显示时仅BitBlt
当数据达到一定程度后,提前绘制已经不现实了[/quote] 至少提前绘制所有Unicode字符,用时不会超过10分钟。
guojiang3552 2017-04-19
  • 打赏
  • 举报
回复
引用 5 楼 zgl7903 的回复:
根据滚动位置和窗口大小 仅绘制可以范围数据
嗯, 抽空实验一下,谢谢
guojiang3552 2017-04-19
  • 打赏
  • 举报
回复
引用 6 楼 zhao4zhong1 的回复:
预先绘制好整张图, 显示时仅BitBlt
当数据达到一定程度后,提前绘制已经不现实了
xiaohuh421 2017-04-17
  • 打赏
  • 举报
回复
当数据量达到一定的时候, 都是需要做缓存的. 也就是部分绘制 + 预加载 绘制出需要显示的部分, 然后预判一下, 马上需要绘制的部分, 提前准备好.
gz_qmc 2017-04-16
  • 打赏
  • 举报
回复
双缓冲可以轻松解决这个问题
worldy 2017-04-16
  • 打赏
  • 举报
回复
计算窗口的显示范围,超出窗口范围的,不要去绘画,就不会卡
cutmelon 2017-04-14
  • 打赏
  • 举报
回复
用视口概念吧,比方说你有3000个数据,界面可见只有100个,那就只创建100个界面元素,滚动条发生变化时,把对应的数据更新到界面元素上而不是滚动整个view

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧