由于具有多线功能,我正在使用 TEdit 框的 TMemo 框内容。
我在猜测,我使用 .Text 属性在运行时分配值。但后来我意识到在设计时没有 Text 属性。相反,我找到了行属性。
我查看了此页面:http://lazarus-ccr.sourceforge.net/docs/lcl/stdctrls/tmemo.html了解更多信息。
我发现该文档中没有 Text 属性,只有 Lines 属性。
我使用 .Text 是否正确或使用此问题?
这是我的代码:
if dlgSave.Execute Then
begin
txtSaveName.Text := dlgSave.FileName;
end;
txtSaveName:TMemo
dlgSave:TSaveDialog
感谢您的任何意见。
答案 0 :(得分:1)
Lines是一个TStrings,一个基本上是字符串数组的包装器。
Text是一个简单的属性,当读取时将字符串连接在一起(在它们之间使用lineseparators),并且在分配时也将单个字符串解析为多个字符串。
我不会太担心它,只需要三次使用它就可以使用它来获得巨大的字符串(想想数百MB甚至更大),因为这种高级功能所做的所有复制都会占用相当多的内存。
不使用它的另一个(次要)理由是,如果您希望读取和写入是二进制相同的。假设您有一个带有混合行结尾的文本,并将其分配给文本并将其读回,那么现在混合的线条将是统一的。