说的简单一点combobox1里有3个item:1;2;3.
还有一个是edit1,一个button1.
当combobox1里选中1并clickbutton1 edit1.text显示one
             选中2并clickbutton1 edit1.text显示two
             选中3并clickbutton1 edit1.text显示three
             没选并clickbutton1  edit1.text显示错误
怎么做比较好。听说用
var
  ID:TStringList;比较好。我不知道怎么做最简便。
请大家给出关键代码。谢谢。

解决方案 »

  1.   

    procedure test(i:integer);
    var lst:TStringList;
    begin
       lst:=TStringList.create;
       lst.text:=combox1.text;
       showmessage(lst.strings[i]);
       combox1.text=lst.text;
       lst.free
    end;
    procedure button1(sender :Tobject);
    var i:integer;
    begin
    test(i);
    end;
    大概就这样吧
      

  2.   

    lst.text:=combox1.text;
    为什么是这样?
    这样我还不如edit1.text:=combobox1.text来的方便。
    关键是combobox1的内容与要edit1显示的内容是不同的。
      

  3.   

    procedure button1(sender :Tobject);
      begin
        if combobox1.itemindex=0 then 
           edit1.text:='one';
        if combobox1.itemindex=1 then 
           edit1.text:='two';
        if combobox1.itemindex=2 then 
           edit1.text:='three';
       end;
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    case  combobox1.ItemIndex of
    0:      edit1.Text :='one';
    1:      edit1.Text :='two';
    2:      edit1.Text :='three';
    else
    edit1.Text :='error';
    end;
    end;
      

  5.   

    thebest123(凌然) 
    wind8bell(风之铃)
    的方法是我现在用的,还有什么更简便的方法吗?
      

  6.   

    刚刚找到了一个,我稍微改了改可以用了。但是不知道原理,谁能帮我解释一下啊。
    procedure TForm1.FormCreate(Sender: TObject);
    var
      s : string;
    begin
     combobox1.Clear;
      s := '01';
      combobox1.Items.AddObject('北京',TObject(s));
      s := '02';
      combobox1.Items.AddObject('天津',TObject(s));
      s := '03';
      combobox1.Items.AddObject('上海',TObject(s));end;
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if combobox1.ItemIndex=-1 then         begin
                                             edit1.Text:='error';
                                             exit;
                                             end;
      edit1.Text := string(combobox1.Items.Objects[combobox1.ItemIndex]);
    end;
      

  7.   

    const
       Info=array[0..3] of string=('One','two','three','error');procedure TForm1.Button1Click(sender:TObject);
    begin
      if ComboBox1.ItemIndex<0 then
        Edit1.Text:=Info[4]
      else
        Edit1.Text:=Info[ComboBox.ItemIndex];
    end;
      

  8.   

    Info:array[0..3] of string=('One','two','three','error');
      

  9.   

    偶觉得wind8bell(风之铃)的方法也很简便!