DBGrid1与ADODataSet1连接,一次输入多条记录,如何使某几个字段为只读?
语句如下:dbgrid1.Columns[i].ReadOnly:=true;
可是不行,还是可以改写。如何解决?谢谢。

解决方案 »

  1.   

    我用ADODataSet1使两个表建立关联,同时设置ADODataSet1.LockType;=ltBatchOptimistic;设为缓存更新。我在入库时一次性在DBGrid1中可添加多条记录,我想使其中的某几列为只读,如单价和金额。我只需输入入库数量,单价自动从库存表中调用,同时算出金额。怎么解决?
      

  2.   

    ADODataSet1.FieldByName('单价').ReadOnly := true;
      

  3.   

    csnight(帅得拖网速) 
     
       ADODataSet1.FieldByName('单价').ReadOnly := true;
    ----------------------------------------------------------
    我试过了,不行,还是可以改写。
      
     
      

  4.   

    首先单价是从库里调出来的,需要设置为只读,在DATASET里添加静态自动单价,并将其设置为只读,金额应该是一个计算子度,你应该在DATASET里新建改子度,并在DATASET计算事件里计算改金额值。计算字段本身就是只读的。
      

  5.   

    ADODataSet1两个表建立关联,ADODataSet1里的单价是从表中调用出来的,我把它的属性设只读了,可还是能改。