我在数据库里一次查出了很多条语句。怎么才能把查出来的记录都显示在ComboBox里呢?

解决方案 »

  1.   

    ComboBox.Items.Clear;
     With ADOQuery1 do
     begin
       First;
       While Not Eof do
       begin
         ComboBox1.Items.Add(FieldByName('FieldName').AsString);
         Next;
       end;
     end;
      

  2.   

    procedure TForm.FormCreate(Sender: TObject);
    begin
      with query do
      begin
        open;
        while not eof do
        begin
          ComboxBox.Items.Add(FieldByName(FieldName).AsString);
          Next;
        end; 
      end;
    end;
      

  3.   

    应该是
    combobox1.clear
    if query1.recordcount>1 then
      ....
    else
      

  4.   

    用下面的代码
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Box1.Items.Clear;
    With Query Do
     Begin
      Close;
      Sql.Clear;
      Sql.Add('select id,name from tab1 where id='''+Edit1.Text+'''');
      Try
        Open;
        First;
        If IsEmpty
          Then Begin
            ShowMessage('没有符合条件的记录');
            Exit; 
               End
          Else While Not Eof Do
             Begin
               Box1.Items.Add('ID:'+FieldByName('id').ASString+'Name:'+FieldByName('Name').ASString);
             End;
      Except
        ShowMessage('执行查询异常');
      End;
      Query.Close;
     end;
    end;
      

  5.   

    呵呵,刚才忘记在while 里加Next了
      

  6.   

    recordcount>1 是什么意思啊?能解释一下吗?
      

  7.   

    recordcount是记录的数量,如果表中没有记录,recordcount就等于0
    如果recordcount>0,就可以通过循环把值加入到combobox里面去了
      

  8.   

    讚成干雨的! 順便說一下 recordcount
     用recordcount沒有問題可以實現,但是在網絡版中如果下載的數據庫大的話
     將大大延長程序的執行時間. 
     因爲recordcount將很耗時間.盡量用查詢.
      

  9.   

    combobox.items.clear;
    query.first;
    while not query.eof do begin
      combobox.items.add(query.fieldbyname(fieldname).asstring);
      query.next;
    end;
      

  10.   

    ComboBox.Items.Clear;
     With ADOQuery1 do
     begin
       First;
       While Not Eof do
       begin
         ComboBox1.Items.Add(FieldByName('FieldName').AsString);
         Next;
       end;
     end;
    ************************************************
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Box1.Items.Clear;
    With Query Do
     Begin
      Close;
      Sql.Clear;
      Sql.Add('select id,name from tab1 where id='''+Edit1.Text+'''');
      Try
        Open;
        First;
        If IsEmpty
          Then Begin
            ShowMessage('没有符合条件的记录');
            Exit; 
               End
          Else While Not Eof Do
             Begin
               Box1.Items.Add('ID:'+FieldByName('id').ASString+'Name:'+FieldByName('Name').ASString);
             End;
      Except
        ShowMessage('执行查询异常');
      End;
      Query.Close;
     end;
    end;这两种都可以