主窗口有两个下拉框,第一个下拉框从ACCESS数据库(假定为d:\class.mdb)里取出所有的班级,第二个下拉框需要根据第一个下拉框所选择的班级而显示这个班级所有的成员的名字,不知道该如何实现,希望提供源代码!谢谢!

解决方案 »

  1.   

    用filter
    比如
    filter = '班级='+ Combobox1.SelectedItem;
      

  2.   

    不需要代码,只要 7 个控件即可完成。
    1。ADOConnection1: TADOConnection; //连接 ACCESS 数据库
    2。ADOTable1: TADOTable;  //主表
       Connection 属性设置为 ADOConnection1;
       TableName 属性设置为班级表的名称。
    3。DataSource1: TDataSource;
       DataSet 属性设置为 ADOTable1。
    4。DBLookupComboBox1: TDBLookupComboBox1;
       ListSource 属性设置为 DataSource1;
       ListField 和 KeyField 属性均设置为 班级名称字段。
    5。ADOTable2: TADOTable;  //细表
       Connection 属性设置为 ADOConnection1;
       TableName 属性设置 为成员表的名称;
       MasterSource 属性设置为 DataSource1;
       MasterFields 属性设置,将 成员表 与 班级表 关联,建立主细表。
    6。DataSource2: TDataSource;
       DataSet 属性设置为 ADOTable2。
    7。DBLookupListBox1: TDBLookupListBox;
       ListSource 属性设置为 DataSource2;
       ListField 和 KeyField 属性均设置为 班级成员字段。
      

  3.   

    请教一下,为什么我设置MasterFields ,总是弹出对话框要输入用户名和密码,我的数据库也没有设置用户名和密码啊?
      

  4.   

    看看ADOConnection的loginprompt屬性是否為true,如果是,改為false
      

  5.   

    现在又弹出:
     [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
    望,再指点一下。
      

  6.   

    双击 ADOconnection1 控件设置它的数据源,连接你的数据库
      

  7.   

    在请教一下:
    按hiflower大侠所说已设置好7个控件 ,但执行后DBLookupComboBox1及DBLookuplistBox1均为空,且DBLookupComboBox1的下拉键为灰色。
    望指点!