如何在richedit中实现聊天室的滚屏功能

guyu_jj 2005-06-03 08:21:39
如题
...全文
173 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
晨池 2005-06-04
  • 打赏
  • 举报
回复
在OnChange事件里写:
Self.SelStart:=Length(Self.Text);
guyu_jj 2005-06-03
  • 打赏
  • 举报
回复
我还想问一下,聊天室的滚屏到底实现的是什么功能?
其实我的问题是怎么让他不滚屏,

我的需求是:
滚屏时: 始终显示最新信息(系统默认实现)
不滚屏时: 只显示当前信息(问题所在)
guyu_jj 2005-06-03
  • 打赏
  • 举报
回复
试过了,不过它一次只下滚一条,如果我的文件有10000条,那就不行了
xyyct 2005-06-03
  • 打赏
  • 举报
回复
试一试
SendMessage(RichEdit1.Handle, WM_VSCROLL, SB_PAGEDOWN, 0);
内容概要:本文系统介绍了嵌入式应用层感知底层变化的三种典型方式——轮询、回调函数和观察者模式,通过温控系统的实际案例对比分析其原理与优劣。轮询由应用层主动周期性查询数据,实现简单但占用CPU资源且实时性差;回调机制由底层在数据变化时主动通知应用层,提升了实时性和效率,但仅支持单一响应且存在耦合;观察者模式通过“订阅-通知”机制实现一对多的事件广播,彻底解耦模块间依赖,扩展性强,适用于复杂系统。文章还简要提及消息队列与事件总线作为更高级的异步通信方案,并指出这些技术背后对应的设计模式思想,强调在嵌入式开发掌握软件架构设计的重要性。; 适合人群:具备C语言基础和嵌入式开发经验的初级至级研发人员,尤其适合正在学习模块解耦与系统架构设计的工程师。; 使用场景及目标:①理解嵌入式系统模块间通信的不同实现方式及其适用条件;②掌握如何从轮询过渡到观察者模式以提升系统实时性、可维护性和扩展性;③学习在资源受限环境下应用设计模式解决实际问题的方法。; 阅读建议:此资源以实际代码示例贯穿始终,建议读者结合文提供的C语言实现代码进行动手实践,深入体会每种方式在断处理、CPU利用率和模块耦合度方面的差异,并尝试将其应用于自己的项目进行对比优化。

16,741

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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