删除一行:
procedure TMainForm.DeleteRow(row: integer);
var
k, m: integer;
begin
if row > 0 then begin
with stringgrid1 do
begin
for k := row to RowCount - 1 do
for m := 1 to 5 do
cells[m, k] := cells[m, k + 1];
for m := 1 to 5 do
cells[m, rowcount] :='';
RowCount := RowCount - 1;
end;
end;
end;
procedure TMainForm.DeleteRow(row: integer);
var
k, m: integer;
begin
if row > 0 then begin
with stringgrid1 do
begin
for k := row to RowCount - 1 do
for m := 1 to 5 do
cells[m, k] := cells[m, k + 1];
for m := 1 to 5 do
cells[m, rowcount] :='';
RowCount := RowCount - 1;
end;
end;
end;
解决方案 »
- 请问DELPHI ShellExecute(Handle,'open','www.baidu.com',nil,nil,1)中的网址可不可以用变量代替?
- 购买终端设备..
- 关于报表的格式问题
- 有关程序循环问题
- StringGrid如何设置任意行或者列为FixRow或者FixColumn
- 请问Ansichar,widechar,char的区别在哪儿呀.
- &&&&HELP&& listitem 是怎么create?
- 如何去掉窗口的caption栏显示?我就是不想要上面的蓝条!!!!还有delphi打开project时显示找不到其res文件,是怎么回事?
- 请问下点击程序红叉按钮的时候如何进入最小化?
- [开源项目-MyBean轻量级配置框架] 使用MyBean快速搭建分模块的应用程序(主页面的TAB)(DLL-MDI)
- 请问高手如何使我的任务栏失效?
- 谁能回答??!!WIN2000/98的用户更改.不够分,加!
当然,你不能直接用它而已.
你贴出的那个继承自TStringGrid的做法其实已经相当不错了.如果你不习惯,想在设计期用TSTringGrid,也行啊.
假设你FORM上的TstringGrid控件叫StringGrid1
procedure TForm1.BitBtn1Click(Sender: TObject);
var
Cells:TExCell;
begin
Cells:=TExCell(StringGrid1);
Cells.DeleteRow(1);
end;