当我没有非固定行时,如何阻止我的TDrawGrid固定行消失?

时间:2010-08-19 20:17:13

标签: delphi

我对TDrawGrid有固定行有这个问题(虽然同样适用于固定的cols)。

如果你有.FixedRows = 1,并减去.RowCount的值,当它变为1时,.FixedRows会自动设置为0,你的固定行会变成白色而不是通常的灰色 - 除了第0列

我可以阻止这种情况发生吗?这是TDrawGrid中的错误吗?

我意识到我可以在OnDrawCell中放入一些代码来检查rowcount,并在必要时为它绘制一些假的固定行,但我希望不要这样做。

谢谢大家。

1 个答案:

答案 0 :(得分:1)

按照VCL代码设计,它是一个“功能”:-):

procedure TCustomGrid.SetRowCount(Value: Longint);
begin
  if FRowCount <> Value then
  begin
    if Value < 1 then Value := 1;
    if Value <= FixedRows then FixedRows := Value - 1; // <= **@#$#@#$**
    ChangeSize(ColCount, Value);
  end;
end;