跟踪特定条件,只对一行记录只读,多谢。 ( 积分: 200 )

  • 主题发起人 主题发起人 jmlwz
  • 开始时间 开始时间
J

jmlwz

Unregistered / Unconfirmed
GUEST, unregistred user!
跟踪特定条件,只对一行记录只读(ClientDataSet + DBGridEh),怎样做,多谢。
 
請說明確點兒
 
ClientDataSet&nbsp;+&nbsp;DataSource&nbsp;+&nbsp;DBGridEh<br>在&nbsp;DataSource&nbsp;的&nbsp;OnDataChange&nbsp;中写:<br>procedure&nbsp;TForm1.DataSource1DataChange(Sender:&nbsp;TObject;&nbsp;Field:&nbsp;TField);<br>begin<br>&nbsp;&nbsp;if&nbsp;....&nbsp;then&nbsp;DBGridEh1.ReadOnly:=true<br>&nbsp;&nbsp;else&nbsp;DBGridEh1.ReadOnly:=false;<br>end;
 
只对一条记录,只读呀。
 
ClientDataSet&nbsp;+&nbsp;DataSource&nbsp;+&nbsp;DBGridEh<br>在&nbsp;DataSource&nbsp;的&nbsp;OnDataChange&nbsp;中写:<br>procedure&nbsp;TForm1.DataSource1DataChange(Sender:&nbsp;TObject;&nbsp;Field:&nbsp;TField);<br>begin<br>&nbsp;&nbsp;if&nbsp;....&nbsp;then&nbsp;DBGridEh1.ReadOnly:=true&nbsp;//这里的&nbsp;...&nbsp;就是你指定记录的地方,符合条件的记录只读,其它记录都不会自读。<br>&nbsp;&nbsp;else&nbsp;DBGridEh1.ReadOnly:=false;<br>end;
 
嗯,没错,多谢。
 
例如:<br>procedure&nbsp;TForm1.DataSource1DataChange(Sender:&nbsp;TObject;&nbsp;Field:&nbsp;TField);<br>begin<br>&nbsp;&nbsp;if&nbsp;AdoQuery1.FieldByName('ID').AsInteger=101&nbsp;then&nbsp;DBGridEh1.ReadOnly:=true&nbsp;<br>&nbsp;&nbsp;else&nbsp;DBGridEh1.ReadOnly:=false;<br>end;
 
后退
顶部