stringgrid使用?(50分)

  • 主题发起人 主题发起人 fyxhw
  • 开始时间 开始时间
F

fyxhw

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手:本人菜鸟现在正在学习delphi编程在输入单据控制中没办法用dbgrid来输入如何使用
stringgrid控件进行输入编辑删除记录及保存操作。最好能给个例程不胜感激。
 
procedure TForm1.FormCreate(Sender: TObject);
begin
with StringGrid1 do begin
FixedCols:=0;//左边没有固定列
Cells[0,0]:='第一列';//列标题
Cells[1,0]:='第二列';
Cells[2,0]:='第三列';
Cells[3,0]:='第四列';
Cells[4,0]:='第五列';
end;
end;
其中Cell[i,j],表示i列j行!!!行和列都是从0开始!

 
賦值:
if not Query1.Active then Query1.Open;
StringGrid1.RowCount:=Query1.RecordCount;
StringGrid1.Cells[0,0]:='任務單號';
StringGrid1.Cells[1,0]:='客戶';
for i:=6 To 35 do
StringGrid1.ColWidths:=24;
Query1.First;
For i:=1 to Query1.RecordCount do
begin
StringGrid1.Cells[2,i]:=Query1.Fields[0].AsString;
StringGrid1.Cells[3,i]:=Query1.Fields[1].AsString;
。。。。。。
Query1.Next;
end;
編輯:
进入编辑状态: StringGrid.options:=Stringgrid.options+[GoEditing];
结束时: StringGrid.options:=Stringgrid.options-[GoEditing];

刪除:
for i:=0 to stringgrid.rowcount-2 do
stringgrid.rows:=stringgrid.rows[i+1];
stringgrid.rowcount:=stringgrid.rowcount-1;

 
删除:
var i,j,k:integer;
begin
i:=Stringgrid1.row;//当前要删除的行
for j:=i to Stringgrid1.row do
for k:=0 to Stringgrid1.col do
Stringgrid1.cells[k,j]:=Stringgrid1.cells[k,j+1];
Stringgrid1.row:=Stringgrid1.Row-1;
end;
 
dbgrid 当然是事以的!
 
哪里可下stringgrid
 
编辑很简单,将option中的goEditing置为True
删除我对楼上的持保留意见
保存可以用TString类的SaveToFile方法,但是一次只能保存一行或一列
 
TStringGrid控件位於控件列表中Additional頁的第三個控件就是
 
to 楼上,你在干什么??
 
哪里可下stringgrid?????????[:D][:D][:D]
 
我这有 你要我可以给你发过去[:D][:D]
 
后退
顶部