No.1 循环清楚
StringGrid1.Cells[X, Y] := '';No.2 参考
主  题:  如何将StringGrid的某列设为只读,不可写???急急急急急急 
作  者:  yanguozhu ()  
等  级:    
信 誉 值:  100 
所属论坛:  Delphi 
问题点数:  10 
回复次数:  4 
发表时间:  2002-1-25 13:54:21 
   
 
   
 
 
 回复人: CeleronII(抽烟的鱼) (  ) 信誉:100  2002-1-25 14:05:28  得分:0  
  
好象不可以,前两天我也在研究这个问题,如果有哪位高手知道,请不要吝啬你的技术,告诉我们吧 
 
 回复人: starmote(飞蠓) (  ) 信誉:100  2002-1-25 14:13:56  得分:0  
  
响应StringGrid控件的OnSelectCell事件即可:
procedure TForm.gridSelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if (ACol > ReadOnlyColCount) then
begin
grid.EditorMode:=true;
if not (goEditing in grid.Options) then
grid.Options:=grid.Options + [goEditing];
end
else begin
grid.EditorMode:=false;
if (goEditing in grid.Options) then
grid.Options:=grid.Options - [goEditing];
end;
CanSelect:=true
end;
 
 
 回复人: starmote(飞蠓) (  ) 信誉:100  2002-1-25 14:19:30  得分:10  
 
这样即可将前ReadOnlyColCount列都设为只读