DELPHI 如何选中MEMO中的某行内容 记录显示到EDIT

 我来答
zyjying520
2012-04-05 · TA获得超过225个赞
知道小有建树答主
回答量:436
采纳率:100%
帮助的人:372万
展开全部
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;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
GitionYet
2012-04-07 · TA获得超过123个赞
知道小有建树答主
回答量:289
采纳率:0%
帮助的人:238万
展开全部
这个其实很简单。
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;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式