5

私は2つのボタン(Button1、Button2)と1つのメモ(Memo1)を持つ1つのDelphi XE2プロジェクトを持っています。

私の要件は、Button1 Click Some Text が最初の行 (Line1) の Memo1 に表示されることです。Button1 をもう一度クリックすると、新しいテキストが新しい行 (Line2) に書き込まれます。

Button2 をクリックすると、別の新しいテキストが Memo1 に追加されます (最後の行の後に新しい行が作成されます)。だから私は次のコードを書いています:

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」としてテキストが 1 行しか表示されないことです。私を助けてください。

4

3 に答える 3

12

メモ コントロールにさらにテキストを追加するには、次のようにAppendまたはを呼び出します。Add

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;

内容をクリアする必要がある場合は...

Memo1.Lines.Clear;

行を置き換えたい場合 (インデックスが既に存在する場合のみ):

Memo1.Lines[2]:= 'Replacement Text';

行の 1 つを削除するには...

Memo1.Lines.Delete(2);
于 2013-04-14T19:16:50.400 に答える
7

TMemo.LinesTStrings多くの文字列処理機能を持つ型のオブジェクトです。プロパティを割り当てると、Text含まれるすべての文字列が書き換えられます。

すでに存在する他のすべての行の後に、次のように 1 行追加できます。

Memo.Lines.Add('Text');

次の行を (4 番目の位置に) 挿入できます。

Memo.Lines.Insert(3, 'Text');

また、複数の行を追加できます。

Memo.Lines.Add('Line1'#13#10'Line2');
Memo.Lines.AddStrings(ListBox.Lines);
于 2013-04-14T19:54:54.610 に答える