(1) 我采用ADO方式,数据库为ACCESS 2000格式,其中有一个表的记录数为40万条,用:
DM.表名.OPEN;打开时相当费时,大概要停顿一分钟左右,如何才能提速?我是利用ADOQuery控件,其中SQL为 :SELECT * FORM 表名(2)在FORM中的ComboBox控件,如何设置,使用那些事件、方法,可以达到不用鼠标,用上下键头键和回车键达到选择项目的目的,具体就是,上一控件按回车键后,ComboBox控件获得焦点,用上下键选择好项目后,按回车键确定,并移到下一控件。

解决方案 »

  1.   

    1.40万条纪录,你为什么不用Sql server数据库呀2.你可以在前一个控件的onpress事件里面写:
    if key = #13 then
    Combobox.setfouce;
    不就可以实现你要的功能了吗,同理在Combobox的OnPress事件里面写
    if key = #13 then
      下一控件得到焦点Combobox控件支持上下键,不用可以的去写
      

  2.   

    1:你是所有的字段都有用吗?
    2:在前一个控件的KeyPress事件里面写
    if Key = #13 then
        begin
            if not (ActiveControl is TDBGrid) then
            begin
                Key := #0;
                Perform(WM_NEXTDLGCTL,0,0);
            end;
        end;在该Combobox的OnKeyPress事件里面直接用上面的事件就可以实现你的功能了。
      

  3.   

    ADOQuery控件的CursorType设置为clUseServer,CacheSize设置为1000,这样可以提高打开表的效率。
      

  4.   

    我要使用查找呀,不是显示,不行的,加了CacheSize设置为1000,结果会错的!