好几个字段的下列内容相同.
例如:
id 字段1 字段2 字段3
1  下拉a 下拉a  下拉a
2  下拉a 下拉a  下拉a
3  下拉a 下拉a  下拉a
.............

解决方案 »

  1.   

    var piks: TStrings;
        pikq: TADOQuery;
      piks := TStringList.Create;
      with pikq do
      begin
        Connection := ADOC;  //已设定的ADOConnection 
        Close;
        SQL.Clear;
        SQL.Add('SELECT 所需下拉的字段 FROM 提供下拉字段的表');
        Open;
        while not eof do
        begin
          piks.Add(FieldByName('CauseCategory').AsString);
          Next;
        end;
      end;
      pikq.Free;
      datagrid.Columns.Items[x].PickList := piks;  // datagrid-- 需要使用的GRID, x-- GRIDR的列
      piks.Free;
      

  2.   

    注:
    begin
          //piks.Add(FieldByName('CauseCategory').AsString);
          piks.Add(FieldByName('所需下拉的字段').AsString);
          Next;
      

  3.   

    谢谢,
    datagrid.Columns.Items[x].PickList := piks;  // datagrid-- 需要使用的GRID, x-- GRIDR的列
    piks.Free;
    在creat事件里可以吗?piks.free后,还可以继续使用?
      

  4.   

    晕,有那么复杂吗?直接把字段类型设置为lookup就行了嘛...