DELPHI 如何选中MEMO中的某行内容 记录显示到EDIT
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DELPHI 如何选中MEMO中的某行内容 记录显示到EDIT相关的知识,希望对你有一定的参考价值。
参考技术A edit1.text := memo1.lines.strings[index]; //index 为行索引,下标为0追问var
n:integer; //定义1个变量
begin
for n:=0 to memo1.Lines.Count-1 do
begin
edit1.Text:=memo1.Lines.Strings[n];
end;
end;
我加了个循环,但是老是取最后一行.取中间的行都没反应
你得理解edit1.Text:=memo1.Lines.Strings[n]; 是将当赋值到edit1.text中,而且你还是放在循环中的,循环次数是memo1的最大行数,一直到循环结束都没有做其它判断,肯定最后的结果是最后一行了,如果需要在哪一行停止就得加个判断例如
根据行判断跳出
if n > 4 then
break;
根据行内容判断跳出
if memo1.lines.strings[n] = 'xxxx' then
break;
var a:integer;
procedure TForm1.memo1Click(Sender: TObject);
begin
a:=SendMessage(Memo1.Handle,EM_LineFromChar,Memo1.SelStart,0); //获取当前行号
edit1.Text:=memo1.Lines.Strings[a]; //记录显示
end;本回答被提问者采纳
如何提取DELPHI中MEMO中某一行的内容?
比如,本人设了一个MEMO1,现在想提取MEMO1中第二行的内容,请问如何提取?代码怎么写?谢谢!
可用以下代码读取Memo中指定行的内容:
varaLine:String;
begin
aLine:=Memo1.Lines[2];
end;
在使用中,读取的行在Memo中需要保证是存在的,否则会导致异常。
对于数组Lines的索引取值范围为0-Memo1.Lines.Count;
如果超过此范围,取得的数据为空。
参考技术A ShowMessage(Memo1.Lines.Strings[1]);本回答被提问者采纳 参考技术B vartempStr: string;
begin
tempStr := memo1.Lines[1]; //0--第一行,1--第二行
end;
以上是关于DELPHI 如何选中MEMO中的某行内容 记录显示到EDIT的主要内容,如果未能解决你的问题,请参考以下文章