怎样去掉StringGrid表格中的蓝色格子?(50分)

  • 主题发起人 主题发起人 sleepy
  • 开始时间 开始时间
S

sleepy

Unregistered / Unconfirmed
GUEST, unregistred user!
我仅仅想通过格子来显示数据,而不需要修改数据,但是格子中总是有
一个蓝色的格子。 我在Option中去掉了GoRangeSelect,还是会有,
请问有什么好办法吗?
 
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
with StringGrid1 do
with Canvas do
begin
if (ARow>=FixedRows)and(ACol>=FixedCols) then Brush.Color:=clWhite;
FillRect(Rect);
end;
end;

 
stringgrid1.DefaultDrawing:=false; //must add
 
教一个歪招:
利用stringgrid.Selection属性,把当前的焦点cell设为一个显示区域外的cell上。如一个5*5的grid,但只显示4行,可onExit在中:
var a:TGridRect;
begin
a.Left:=4;
a.Top:= 4;
a.Bottom:=5;
a.Right:=5;
stringgrid1.Selection:=a;
end;
 
将alwaysshowselection设为false试一下。
 
stringgrid中写入数据后,
enabled:=false;
 
goFocusSelected:=False;
goAlwaysShowEditor:=False;
 
后退
顶部