怎么让DBGrid不获得焦点但出现选中状态 ?谢谢(50分)

  • 主题发起人 主题发起人 bgqy2000
  • 开始时间 开始时间
什么意思?
是不让出现前面的黑三角吗?
 
在数据集上定位就行了。
 
我的意思是这样的:dbgrid1,dbgrid2用来显示adoquery1,adouery2,当点击adoquery1时,(因adoquery1跟adoquery2有一个字段是相同的,可以用locate定位来寻找adoquery2中的记录)如果adoquery2对应的一条记录跟adoquery1相对应的话也让adoquery2也处于被选中(也就是让记录的颜色处于深蓝色)的状态,如果没有的话就让dbgrid2中不选中任何记录也就是不让它获得焦点。这个我用鼠标操作实现了,问题是怎么用键盘的上下键来操作?
 
设置dbgrid的options->dgRowSelect=True,options->dgAlwaysShowSelection=True
就行了
 
hongxing_dl 能加你的msn或qq么?我的msn:bgqy2000@hotmail.com
qq:57284090 每次你都把我的问题解决了,呵呵。
 
顺便问下:我在ClientDataSet记录里添加了一个计算字段CDSWareDetilTotal,运行程序后计算字段却是空的,好象是下面的事件没有执行。
procedure TfrmMain0.CDSWareDetilCalcFields(DataSet: TDataSet);
begin
DataSet.FieldByName('CDSWareDetilTOTALSUM').Value :=
DataSet.FieldByName('CDSWareDetilSHE_NQUANTITY').Value * DataSet.FieldByName('CDSWareDetilSHE_NTRUEPRICE').Value;

end;
 
多人接受答案了。
 
后退
顶部