Delphi中StringGrid删除

发布时间:2022-06-26 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Delphi中StringGrid删除脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
开发环境D7只是部分代码StringGrid1事先固定了行数为20,固定了一行为标题行

Delphi中StringGrid删除

 

 

----实现单行删除内容(StringGrid1事先固定了行数为20,固定了一行为标题行),没有固定多少行的时候请适当改写,这个是本人测试代码

 1 var
 2   i:Integer;
 3 begin
 4   if StringGrid1.RowCount<2 then
 5   begin
 6     Exit;
 7   end;
 8   StringGrid1.Rows[StringGrid1.Row].Clear;
 9   if StringGrid1.Row=StringGrid1.RowCount-1 then
10     Exit;
11   for i:=StringGrid1.Row to StringGrid1.RowCount-2 do
12   begin
13     StringGrid1.Rows[i]:=StringGrid1.Rows[i+1];
14     StringGrid1.Rows[i+1].clear;
15   end;
16 
17 end;

--------增加行

StringGrid1.RowCount:=StringGrid1.RowCount+1;

---------减少行

StringGrid1.RowCount:=StringGrid1.RowCount-1;

----------Showhint 单元格内容

1 procedure TForm1.StringGrid1MouseMove(Sender: TObject; Shift: TShiftState;
2   X, Y: Integer);
3 begin
4   if (StringGrid1.MouseCoord(x,y).X>StringGrid1.ColCount-1) or (StringGrid1.MouseCoord(x,y).X<0) then
5     Exit;
6   if (StringGrid1.MouseCoord(x,y).Y>StringGrid1.RowCount-1) or (StringGrid1.MouseCoord(x,y).Y<0) then
7     Exit;
8   StringGrid1.Hint:=StringGrid1.Cells[StringGrid1.MouseCoord(x,y).X,StringGrid1.MouseCoord(x,y).Y];
9 end;

 

 

--------------为单元格赋值    标题行不赋值

 1 var
 2   i,j:Integer;
 3 begin
 4    for i:=0 to StringGrid1.ColCount-1 do
 5    begin
 6      for j:=0 to StringGrid1.RowCount-1 do
 7      begin
 8        if j=0 then
 9        begin
10          Continue;
11        end;
12        StringGrid1.Cells[i,j]:=Format('i:=%d ;j:=%d',[i,j]);
13      end;
14    end;
15 end;

---------------清空StringGrid的内容(标题行不清除)

1 var
2   i:Integer;
3 begin
4    for i:=1 to StringGrid1.RowCount-1 do
5       StringGrid1.Rows[i].Clear;
6 end;

 

脚本宝典总结

以上是脚本宝典为你收集整理的Delphi中StringGrid删除全部内容,希望文章能够帮你解决Delphi中StringGrid删除所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: