一个文本框edit1 ,一个button,两个memo分别为 memo1和memo2
现在想通过edit1的内容:
i:=strtoint(edit1.text);
若为1,则在memo1中加一个str;
若为2,则在memo2中加一个str;
该如何做,谢谢各位老大了:)

解决方案 »

  1.   

    在button的按下事件中写如下代码
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if trim(edit1.text) = '' then
        exit;
      try
        i := strtoint(edit1.text);
        if i = 1 then
          Memo1.Lines.Add('Memo1:Here!');
        if i = 2 then
          Memo2.Lines.Add('Memo2:Here!');
      except
        Showmessage('转换出错!');
        exit;
      end;
    end;
      

  2.   

    在button的的事件中写:vari:integer;
    str:string;beginstr:='测试';i:=strtoint(edit1.text);if  i=1 thenmemo1.items.add(str)else if i=2 thenmemo2.items.add(str);
    end;
      

  3.   

    谢谢楼上的 是我没有说清楚
    这么说吧 有多个memo
    我运行一个算法可能得到多个答案存于数组中,
    若有一个答案,则显示于MEMO1
    若有两个答案,则分别显示于memo1 memo2
    依次类推
    那么该如何处理?
    有没有简单的做法?
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
    i:integer;
    begin
          for i:= 1 to strtoint(edit1.Text) do
          begin
                TMemo(findcomponent('memo'+inttostr(i))).Lines.Add('str');
          end;
    end;
      

  5.   

    那你就
    if i=1 then
    begin
    memo1.items.add(str1);
    end;if i=2 then
    begin
    memo1.items.add(str1);
    memo2.items.add(str2);
    end;if i=3 then 
    .....慢慢玩下去好了。呵呵。你怎么知道预先要准备多少个memo合适你的程序?
    10个?20个?还是打算动态创建?
    我看你的想法只能动态创建了。根据i的值动态创建i个memo