我使用一个 TMemo 盒子,仅仅是因为多行能力。
我在猜测,我使用了.用于在运行时分配值的文本属性。但后来我意识到在设计时没有 Text 属性。相反,我找到了 Lines 属性。
我查看了此页面:http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tmemo.html 以获取更多信息。
我发现该文档中没有 Text 属性,而只有一个 Lines 属性。
是我用的.文本正确还是使用这个有问题?
这是我的代码:
if dlgSave.Execute Then
begin
txtSaveName.Text := dlgSave.FileName;
end;
txt保存名称 : TMemo
dlgSave : TSaveDialog
感谢您的任何输入。
> Lines 是一个 TStrings,一个基本上是字符串数组包装器的类。
Text 是一个简单的属性,当读取时,它将字符串连接在一起(它们之间有行分隔符),当分配时,将单个字符串解析为多个字符串。
我不会太担心它,只需在将其用于大字符串(考虑数百 MB 或更大)之前三思而后行,因为此高级功能完成的所有复制都会消耗相当多的内存。
另一个(次要)不使用它的原因是,如果您希望读取和写入是相同的二进制。假设您有一个具有混合行尾的文本,并且您将其分配给文本并读回它,那么混合行尾现在将是统一的。