procedure TForm4.combobox1DropDown(Sender: TObject);
var
i : integer;begin
  with  adoquery3     dobeginClose;
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Add('Select 课程名称 from 课程信息 where 任课教师='''+form2.edit1.Text+'''');ADOQuery3.Open;
if ADOQuery3.RecordCount>0 then
begin
    for i:=0 to ADOQuery3.RecordCount-1 do
    begin
      ComboBox1.Items.Add(ADOQuery3.FieldByName('课程名称').AsString);
      ADOQuery3.Next;
    end;end;
end;
end;
下拉菜单时,combobox不显示数据库的内容

解决方案 »

  1.   

    procedure TForm4.combobox1DropDown(Sender: TObject);
    var
    i : integer;begin
      with  adoquery3     dobeginClose;
    ADOQuery3.SQL.Clear;
    ADOQuery3.SQL.Add('Select 课程名称 from 课程信息 where 任课教师='''+form2.edit1.Text+'''');
    Memo1.Lines.Add(ADOQuery3.SQL.Text);//然后将Memo里面的SQl复制出来执行下,看下有没有数据
    ADOQuery3.Open;
    if ADOQuery3.RecordCount>0 then
    begin
        for i:=0 to ADOQuery3.RecordCount-1 do
        begin
          ComboBox1.Items.Add(ADOQuery3.FieldByName('课程名称').AsString);
          ADOQuery3.Next;
        end;end;
    end;
    end;
      

  2.   

    没有用,我发现从form2到form4,在返回form2,登录form4就可以显示了,为什么
      

  3.   

    找到问题了  ,在project中createform的顺序有问题
      

  4.   

    问下你这边adoquery的声明是什么,我是初学者,对数据库操作这块不是很熟