转贴:如何实现像Excel一样对选中的单元格自动求和
hszj 2006-05-10 06:38:00 EjunGrid如何实现像Excel一样对选中的单元格自动求和
有朋友在群里提到这个问题,其实可以通过很简单的方法实现,还是看代码吧
procedure TForm1.GridMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
iRow, iCol: Integer;
v: Double;
begin
// 鼠标左键处于按下状态,说明用户这时是在拖动鼠标
if csLButtonDown in Grid.ControlState then
begin
v := 0;
// 对选中框中的所有单元格的值求和
for iRow := Grid.Selection.Top to Grid.Selection.Bottom - 1 do
for iCol := Grid.Selection.Left to Grid.Selection.Right - 1 do
begin
v := v + StrToFloatDef(Grid.Cells[iCol, iRow].Text, 0);
end;
// 把计算的值显示在文本框中
Edit1.Text := FloatToStr(v);
end;
end;