RichEdit的Bug警告(级别:中级)

Linux2001 2003-01-10 09:45:31
我发现了RichEdit的一个Bug,大家可以试验.大家用RichEdit.Lines.LoadFromFile方法加载一个文件(比如20几K的文件,但是要保证这个文件的第一行是{***********************************************************************}也就是第一行需要有整行的星号,你们可以看到,这样RichEdit读取的文件只显示了文件的第一行,其它全部没有!但是同样使用Memo1.Lines.LoadFromFile就没有这样的情况.还有,这个影响了很多第三方控件的RichEdit控件的派生控件.
...全文
239 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
Kingron 2003-01-15
  • 打赏
  • 举报
回复
当然,要是一个500M的文件,肯定要分段读取
Linux2001 2003-01-15
  • 打赏
  • 举报
回复
其实我发现使用分段读取文件的方法,效率最高.
Kingron 2003-01-14
  • 打赏
  • 举报
回复
应该不会!要知道你开始的时候,是后台磁盘操作,后面是内存操作,应该很快的!用Readln的效率应该要低一些!Post your code看看
Linux2001 2003-01-14
  • 打赏
  • 举报
回复
To:Kingron,我试验过你的方法,由于有闪屏的问题,所以放弃了这个方法,速度实在很低。我用readln的方法还要快点
Kingron 2003-01-14
  • 打赏
  • 举报
回复
怎么可能!
Buff:TStrings;

Buff:=TStringList.Create;
Buff.LoadFromFile('aaaa.txt');
RichEdit1.Text := Buff.Text;
Buff.Free;
这样比你的效率要高很多把?
Linux2001 2003-01-14
  • 打赏
  • 举报
回复
它是包含在循环里的
Linux2001 2003-01-14
  • 打赏
  • 举报
回复
我用Readln的方法是这样的:
Readln(fText, tmp);
str.BeginUpdate;
str.Add(tmp);
str.EndUpdate;

RichEdit.text :=str;
效率很低
ndujun 2003-01-11
  • 打赏
  • 举报
回复
我没有发现你说的问题,不过我发现delphi 6的DBRichEdit控件有问题,无论如何设置属性,在载入paradox库中的memo字段时都只能以plaintext显示,而不是richtext显示.后来我换了第三方的同类控件才解决.
Kingron 2003-01-11
  • 打赏
  • 举报
回复
先用一个TStrings把文件Load进来,然后
RichEdit1.Text := TStrings.Text即可。
Linux2001 2003-01-10
  • 打赏
  • 举报
回复
后来我又改用Readln到一个字符串,然后添加到RichEdit中,效率还是比较低.有没有什么方法可以改进效率.
Linux2001 2003-01-10
  • 打赏
  • 举报
回复
那这样的情况如何解决呢?我用的SetText的效率很低啊,Kingron大哥还是这么知识渊博啊.......强.虽然我也进步了点............呜呜.
diruser 2003-01-10
  • 打赏
  • 举报
回复
up
eWong2016 2003-01-10
  • 打赏
  • 举报
回复
哦好像蛮有 辶首 王里 的嘛!
Kingron 2003-01-10
  • 打赏
  • 举报
回复
只要你的文件的第一行是{}括起来的,那么后面都不会Load。
Kingron 2003-01-10
  • 打赏
  • 举报
回复
这也叫BUG?
这是因为你的那个文件根本就不是一个RTF文件,你要用RTF的编辑工具保存之后,在Load就不会出来向这种情况了。
TRichEdit是根据文件的后缀名来LoadFile德,如果是RTF后最,就会按照RTF文件进行读取,而{}在RTF文件中,有着特殊的意义!自己看看一个正常的RTF文件就知道了。RTF文件的所有数据都是在{}之中的。
jackystar 2003-01-10
  • 打赏
  • 举报
回复
up
5200 2003-01-10
  • 打赏
  • 举报
回复
这个BUG好像没什么用
Linux2001 2003-01-10
  • 打赏
  • 举报
回复
不可能吧,我这里公司里的机器和我家里的机器在Delphi5/6两个版本上都是我说的情况啊.你们可以试验打开第三方控件的源代码,切记第一行一定得是我说的那样的情况才会发生错误
chwdong 2003-01-10
  • 打赏
  • 举报
回复
在我这里好用
weenyboy 2003-01-10
  • 打赏
  • 举报
回复
有人测试过相同吗?我这里没有这种情况
加载更多回复(3)
内容概要:本文围绕发光太阳聚光器开展蒙特卡洛光线追踪研究,重点利用Matlab编程实现光线在聚光系统中的传播路径模拟。通过蒙特卡洛方法对大量随机光线进行统计追踪,精确分析光能在接收面上的分布特性、聚焦效率及系统整体光学性能,进而评估不同几何结构与材料参数对聚光效果的影响,为高效太阳能收集系统的设计与优化提供理论依据和技术支持。研究不仅涵盖核心算法实现,还结合多个跨领域科研案例(如电力系统、路径规划、信号处理、机器学习等),展示了Matlab/Simulink在科研建模与仿真中的广泛应用价值,突出了算法仿真与多学科交叉融合的重要性。; 适合人群:具备一定Matlab编程基础,从事光学工程、新能源技术、仿真建模及相关领域研究的科研人员,尤其适合研究生及青年研究人员。; 使用场景及目标:①掌握蒙特卡洛方法在光学系统仿真中的原理与应用;②学习使用Matlab实现光线发射、反射、折射及能量统计的完整追踪流程;③通过实际代码实践优化聚光器结构设计;④借鉴文中多领域仿真案例,拓展科研视野与技术迁移能力; 阅读建议:此资源以代码实现为核心,建议读者结合Matlab环境动手运行与调试程序,重点关注光线追踪的物理建模与数值计算细节,并参照其他仿真范例举一反三,全面提升科研建模与算法实现能力。
内容概要:本文复现并深入探讨了一种基于价格弹性矩阵的居民峰谷分时电价激励策略,属于电力系统需求响应领域的关键技术研究。研究通过构建价格弹性矩阵精确刻画居民用户对不同时段电价变化的用电行为响应特性,结合优化算法设计科学合理的峰谷分时电价方案,有效引导用户在高峰时段减少用电、低谷时段增加用电,实现削峰填谷,提升电网运行稳定性与能源利用效率。文中配套提供了完整的Matlab代码实现,涵盖数据处理、模型构建、优化求解及结果可视化等模块,具有较强的可复现性与工程应用价值,适用于需求侧管理政策仿真与学术研究。; 适合人群:面向具备一定电力系统基础知识、能源经济学或需求响应研究背景的科研人员,以及从事相关课题的硕士、博士研究生;熟悉Matlab编程且关注智能电网优化的技术人员亦可从中获益。; 使用场景及目标:①用于居民侧用电行为建模与电价敏感性分析;②支撑峰谷电价政策的设计、仿真评估与优化调整;③作为高校教学中需求响应机制的算法实现案例与科研入门实践项目。; 阅读建议:建议读者结合Matlab代码逐模块解析其实现逻辑,重点掌握价格弹性矩阵的构造方法、目标函数与约束条件的数学建模过程,以及优化求解器的调用方式,同时可尝试引入其他智能优化算法进行对比实验,以深化对电价激励机制设计原理的理解与创新能力。
内容概要:本文详细介绍了基于Matlab实现的无人机FMCW(调频连续波)毫米波高度计雷达仿真技术,系统阐述了雷达测高系统的工作原理、信号建模方法及完整的信号处理流程。通过构建发射信号与地面回波信号模型,依次完成混频、低通滤波、傅里叶变换(FFT)等关键处理步骤,提取差拍频率以精确计算无人机飞行高度,并对测高精度、分辨率及系统参数影响进行仿真分析与验证。该仿真平台不仅有助于深入理解毫米波雷达在复杂环境下的工作特性,也为无人机地形跟随、精准着陆、低空避障等应用场景提供了可靠的技术支撑和算法验证手段。; 适合人群:具备雷达原理、信号与系统、数字信号处理等相关基础知识,从事无人机导航、毫米波雷达开发、自动驾驶传感系统或相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①深入掌握FMCW雷达测距测高的物理机制与数学建模方法;②熟练运用Matlab进行雷达信号仿真与算法实现,提升实际编程与系统调试能力;③为后续开展真实雷达系统开发、测高算法优化或融合其他传感器(如IMU、GPS)的组合导航研究提供理论依据与仿真基础。; 阅读建议:建议结合经典雷达原理教材同步学习,重点理解chirp信号设计、混频后差拍信号特征以及FFT在频率提取中的作用,通过调整带宽、扫频周期、采样率等参数进行仿真实验,观察其对测高性能的影响,从而深化对系统设计关键指标的综合把握。

5,943

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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