首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TMEMO中的多行添加

TMEMO中的多行添加
EN

Stack Overflow用户
提问于 2013-04-15 03:14:46
回答 3查看 33.5K关注 0票数 5

我有一个德尔福XE2项目与2个按钮(Button1,Button2)和1个备忘录(Memo1)。

我的要求是,在Button1中,单击第一行(Line1)中的一些文本将会显示为Memo1。如果我再次单击Button1,一些新文本将写入换行符(Line2)。

如果我单击Button2,另一个新文本将被附加到Memo1中(在最后一行之后将创建一个新行)。因此,我编写了以下代码:

代码语言:javascript
运行
复制
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.Text :='Line1';
  Memo1.Lines.Text :='Line2';
end;
....
....
....
....
procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo1.Lines.Text :='Line3';
  Memo1.Lines.Text :='Line4';
end;

但问题是,只有一行文字在Button1FirstClick上显示为"Line1“,在Button1SecondClick上显示为"Line2”,在Button2Click上显示为"Line4“。请帮帮我。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-15 03:16:50

若要向memo控件添加更多文本,请调用AppendAdd,如下所示:

代码语言:javascript
运行
复制
procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.Add('Line1');
  Memo1.Lines.Add('Line2');
end;
....
....
....
....
procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo1.Lines.Add('Line3');
  Memo1.Lines.Add('Line4');
end;

如果你需要清理里面的东西...

代码语言:javascript
运行
复制
Memo1.Lines.Clear;

如果您希望替换一行(仅当索引已存在时):

代码语言:javascript
运行
复制
Memo1.Lines[2]:= 'Replacement Text';

要删除其中一行...

代码语言:javascript
运行
复制
Memo1.Lines.Delete(2);
票数 12
EN

Stack Overflow用户

发布于 2013-04-15 03:54:55

TMemo.Lines是一个TStrings类型的对象,它具有许多字符串处理功能。分配Text属性会重写它包含的所有字符串。

您可以使用以下命令在所有其他已存在的行之后添加一行:

代码语言:javascript
运行
复制
Memo.Lines.Add('Text');

您可以使用以下命令插入一行(在第四个位置):

代码语言:javascript
运行
复制
Memo.Lines.Insert(3, 'Text');

您还可以添加多行:

代码语言:javascript
运行
复制
Memo.Lines.Add('Line1'#13#10'Line2');
Memo.Lines.AddStrings(ListBox.Lines);
票数 7
EN

Stack Overflow用户

发布于 2013-04-16 16:45:43

在Delphi中有Memo1.Lines.Text

但在C中构建器有Memo1.Text或Memo1->Text

要让多行文本进入TMemo,可以将其赋值为memo1->text = tstringlist->text;

您可以使用tsringlist->CommaText="line1,line2,line3,line4";//,作为新行

然后memo1->text = tstringlist->text;

或memo1 ->行->添加(文本列表->文本);//在memo1后最后一行停止的地方插入

或memo1->行->添加(“行1,\x0d\x0a行2,\x0d\x0a行3");

或memo1->行->添加(“行1,\r\n行2,\r\n行3");

否则使用Memo1->行->添加(“”);//用于每个新的空行

祝好运

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16003220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档