CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

有关StringGrid的控制问题(可能会菜得让大家失望哦!!)

楼主Shadow_boy(没事找事中)2003-03-03 20:52:56 在 Delphi / VCL组件开发及应用 提问

请问如何在stringgrid里删除一个特定行? 问题点数:100、回复次数:12Top

1 楼cgh1970(聊天别找我)回复于 2003-03-03 21:11:20 得分 0

upTop

2 楼bewill(失意的程序民工)回复于 2003-03-03 21:11:36 得分 20

StringGrid1.RowCount   :=   StringGrid1.RowCount   -   1;  
  然后重画内容。  
  Top

3 楼larruping(久有凌云志)回复于 2003-03-03 21:13:04 得分 20

for   i   :=   0   to   4   do  
              begin  
                  StringGrid1.Cols[i].Text:='';  
              end;Top

4 楼xuchunqiang(伤心的土八路)回复于 2003-03-03 21:13:52 得分 0

对,只能重画,我今天还刚用到,呵呵,Top

5 楼bluemeteor(挂月||Becoder)回复于 2003-03-03 21:15:13 得分 10

StringGrid1.Rows[i].Delete  
   
  i为   行号-1Top

6 楼pn(天下无双)回复于 2003-03-03 21:22:07 得分 0

重画Top

7 楼bluemeteor(挂月||Becoder)回复于 2003-03-03 21:25:37 得分 20

不好意思楼上弄错了:(((  
   
  stringgrid行列的增加和删除    
     
   
  --------------------------------------------------------------------------------  
     
   
  type  
      TExCell   =   class(TStringGrid)  
      public  
          procedure   DeleteRow(ARow:   Longint);  
          procedure   DeleteColumn(ACol:   Longint);  
          procedure   InsertRow(ARow:   LongInt);  
          procedure   InsertColumn(ACol:   LongInt);  
  end;  
   
  procedure   TExCell.InsertColumn(ACol:   Integer);  
  begin  
      ColCount   :=ColCount   +1;  
      MoveColumn(ColCount-1,   ACol);  
  end;  
   
  procedure   TExCell.InsertRow(ARow:   Integer);  
  begin  
      RowCount   :=RowCount   +1;  
      MoveRow(RowCount-1,   ARow);  
  end;  
   
  procedure   TExCell.DeleteColumn(ACol:   Longint);  
  begin  
      MoveColumn(ACol,   ColCount   -1);  
      ColCount   :=   ColCount   -   1;  
  end;  
   
  procedure   TExCell.DeleteRow(ARow:   Longint);  
  begin  
      MoveRow(ARow,   RowCount   -   1);  
      RowCount   :=   RowCount   -   1;  
  end;    
  Top

8 楼bluemeteor(挂月||Becoder)回复于 2003-03-03 21:25:54 得分 0

转贴自超级猛料Top

9 楼jieguo(天下有眼)回复于 2003-03-03 21:32:21 得分 0

我收藏一下了,支持挂月Top

10 楼hotzhu(天下无妞)回复于 2003-03-03 21:42:24 得分 10

有个TadvStringGrid很好用,看看里面的源码就知道, 实现方法即为挂月所写.Top

11 楼zhangpeigao(东部一绝)回复于 2003-03-03 21:42:58 得分 20

if   StringGrid1.Cells[StringGrid1.Col,StringGrid1.Row]=''   then   exit;  
  if   application.messagebox('确定删除','系统提示',MB_OKCANCEL+MB_ICONQUESTION)<>IDCANCEL   then  
        begin  
        for   i:=StringGrid1.Row   to   StringGrid1.RowCount-1     do  
                begin  
                StringGrid1.Cells[1,i]:=StringGrid1.Cells[1,i+1];  
                end;  
        if   StringGrid1.RowCount=2   then  
              begin  
              StringGrid1.Cells[0,1]:='';  
              StringGrid1.Cells[1,1]:='';  
              end  
        else  
              StringGrid1.RowCount:=StringGrid1.RowCount-1;  
        j:=1;  
        for   i:=StringGrid1.RowCount-1     downto   1   do  
                begin  
                StringGrid1.Cells[0,i]:=inttostr(j);  
                inc(j);  
                end;  
        end;Top

12 楼LKJ99(路是人走的,命是天定的)回复于 2003-03-14 11:57:09 得分 0

其实应该这样:  
  如果要删除   第   i   行,  
  你要这样:用   第   i+1   行   覆盖   第   i   行,  
                    用   第   i+2   行   覆盖   第   i+1   行,  
                    .   .   .   .   .   .(如此类推直至   )   ,  
                    用   第   RowCount   -1   行   覆盖   第   RowCount   -2   行;  
                    最后把最后一行(即RowCount   -1)清空   或者   RowCount   :=   RowCount   -1。  
   
  行的覆盖方法:Rows[i]   :=   Rows[i   +   1]  
  当然,你还要注意一些特殊处理,  
  例如:StringGrid的总行数是0或1;删除的是不是最后一行等。Top

相关问题

  • 菜單控制。
  • StringGrid,菜问题!
  • 菜单项控制
  • StringGrid菜鸟问题。
  • 动态控制菜单
  • 如何控制菜单?
  • 请问如何控制stringgrid某一行的颜色
  • 可以控制stringGrid中row移动?象DBGrid中的next
  • StringGrid怎样控制某一列可以编辑
  • 请问:如何控制绘制的stringgrid颜色不被刷去

关键词

  • stringgrid
  • rowcount
  • texcell
  • arow
  • colcount
  • acol
  • longint
  • 删除
  • 覆盖
  • procedure

得分解答快速导航

  • 帖主:Shadow_boy
  • bewill
  • larruping
  • bluemeteor
  • bluemeteor
  • hotzhu
  • zhangpeigao

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo