项目中有个功能是基料设置,,,里面的资料名称是TDEdit,,,关联到了数据库,打开这个页面的时候就能自动显示内容,,然后按这个应用程序中上面菜单栏里的增加按钮,这些内容就会清空,就可以增加新记录了,,但这段功能是怎么实现的,我太菜了还没整明白呢,现在有个问题,是要求我把资料名称这个组件给封上,就是在显示时只能显示内容而不能更改内容,,但按增加按钮以后这个栏里面又能增加新的内容,,,可我也不会啊,我就把这栏TDBEdit的READONLY设为TRUE了,这样是不能修改了,可是按完按钮之后这栏也还是不能增加内容的,栏内就是空白不动,,,,,还有,我对TDBEdit也是始终都没弄明白,,就是这么个情况,,,,应该怎么实现呢,,请大家帮着出点招吧,,先谢了,

解决方案 »

  1.   

    再问个小问题,怎么样才能使dxDBLookupEdit显示时为空,拉出下拉菜单才可能选择里面的内容呢,
      

  2.   

    dxDBLookupEdit在其索引为0的地方ADD('')就能显示时为空,拉出下拉菜单才可能选择里面的内容
      

  3.   

    在combo的ondropdown事件中添加如下代码:
    table.open
    table.first;
    combo.item.clear;
    for i:=0 to i:=table.recordcount-1 do
    begin
    combo.item.add(table.fieldbyname('fieldname').asstring);
    table.next;
    end;
      

  4.   

    只能显示内容而不能更改内容:
    dbedit.enabled:=false;
    当单击添加时在添加按扭的onclick时间中添加如下代码,内容变为可编辑:
    dbedit.enabled:=true;
      

  5.   

    我觉得可以这样,生成一个LOOKUP的字段,此字段的的显示来源于查询,最终你所要存取的记录中。
      

  6.   

    我生成LOOKUP的字段了,
    我现在的dxDBLookupEdit的下拉框中会显示两项,一个是编码,一个是名称,这框对应表中的记录是编码项,,,然后旁边放了一个DBText用于显示所选的名称,,,,我也按照原来的一些设置,将TADOTABLE里新加的LOOKUP字段设值了,,
    运行时,在按下下拉框选择内容之后,DBTexT是显示对应编码的名称的,但是一保存就不行了,保存的时候不是保存数据源的第一个值,就是空值,,整地我都晕了,
    Parameters.ParamByName('r').Value:=DBText1.DataSource.dataset.fieldbyname('CustName').AsString;
    这是这样取的值,对吗????
    不知道我说清楚了没,,,,,,,,,,,,,,,,,,,,,,,,,
    还有,如果我对dxDBLookupEdit什么都不选的话,它保存的也还是第一个值,而不是空值,,,怎么办啊,,,,,,,,,,,,,,,