C# WinForm richtextbox如何实现覆盖翻页

剑无道 2017-10-10 05:23:56
做了一个小软件,richtextbox读取显示文本。

之前做了一个滚动翻页,是获取滚动条的焦点来的。
这个方案当文本不是很大的时候,滚动很平滑,效果还不错。
但是当文本超过400kb,焦点移动后,文本的移动距离就很大了,就非常不平滑。

现在想增加另一种自动翻页方式,覆盖翻页。
像iReader里面的覆盖翻页一样,从上至下,逐渐更新richtextbox的显示内容

但是不知道怎么去实现,求大神指点!
谢谢!

...全文
821 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
剑无道 2019-02-28
  • 打赏
  • 举报
回复
引用 13 楼 desperaso 的回复:
可以参考一下 https://www.haolizi.net/example/view_14837.html
这个方法类似于直接将界面绘成图片了。 然后直接重绘整个界面,理论上应该是可以实现的。已经好久没弄了,荒废了,后续有时间机会再去处理吧。
desperaso 2019-01-13
  • 打赏
  • 举报
回复
可以参考一下
https://www.haolizi.net/example/view_14837.html
小杨找bug 2019-01-10
  • 打赏
  • 举报
回复
请问你会了吗???我也在做,卡住了
剑无道 2017-10-17
  • 打赏
  • 举报
回复
大神些,求出来指导一下下~ 本人菜鸟,没学过,实在不知道怎么弄了。
threenewbee 2017-10-11
  • 打赏
  • 举报
回复
这个需要文本重绘,用html可以用css实现
threenewbee 2017-10-11
  • 打赏
  • 举报
回复
这个需要文本重绘,用html可以用css
剑无道 2017-10-11
  • 打赏
  • 举报
回复
引用 9 楼 hjq624779687 的回复:
刚才我和同事在考虑读流的方式,这样就不用到分页,而且可能系统开销也会小一些,每次只用加载N个字节,而你每行字节数和行数是固定的。。。。 感觉这样就是要重新实现一遍textbox了。。。让我再想想。。。
我的窗口大小可以变,这样每行的字节数和行数也就不固定了。 这样是不是开始滚动之后就无法变更大小,或者要变更的时候就必须停止滚动。
夏天的枫 2017-10-11
  • 打赏
  • 举报
回复
刚才我和同事在考虑读流的方式,这样就不用到分页,而且可能系统开销也会小一些,每次只用加载N个字节,而你每行字节数和行数是固定的。。。。 感觉这样就是要重新实现一遍textbox了。。。让我再想想。。。
夏天的枫 2017-10-11
  • 打赏
  • 举报
回复
这种看书软件,我想到的就是导入书籍的时候就进行分页,每次加载N页,加入队列,翻页的时候做个出队和入队就行了 还可以顺带实现按页数跳转之类的,再高端点分页的时候加入正则匹配 “第N章”之类的这种 个人能力有限
剑无道 2017-10-11
  • 打赏
  • 举报
回复
引用 7 楼 hjq624779687 的回复:
这种看书软件,我想到的就是导入书籍的时候就进行分页,每次加载N页,加入队列,翻页的时候做个出队和入队就行了 还可以顺带实现按页数跳转之类的,再高端点分页的时候加入正则匹配 “第N章”之类的这种 个人能力有限
但是我这个带有编辑功能,导入的时候分页的话,编辑之后不太方便存入。 而且有滚动条,如果导入就将分页做好,滚动了位置,分页岂不是要变,怎么变? 另外重点是分页之后,怎么重绘?
剑无道 2017-10-11
  • 打赏
  • 举报
回复
引用 3 楼 caozhy 的回复:
这个需要文本重绘,用html可以用css实现
突然发现,你是说在richTextBox里面直接将文本解析成html方式来显示? 我先去把这一步研究出来试试。
剑无道 2017-10-11
  • 打赏
  • 举报
回复
引用 1 楼 njit_77 的回复:
类似Listbox那样缓存分页?不太清楚?(另遮天看了2遍,完美不行)
我想应该也是要用到缓存分页,只是自己菜鸟,不会,所以来求教!
剑无道 2017-10-11
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
这个需要文本重绘,用html可以用css
你说的是整个用web来做,不是在c#里面吗? 这样是可以实现,不过我是想在C# richtextbox里面实现。
njit_77 2017-10-10
  • 打赏
  • 举报
回复
类似Listbox那样缓存分页?不太清楚?(另遮天看了2遍,完美不行)

111,083

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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