就是在Stringgrid中,哪个事件可以做到当用户填几个单元格的数据时另一个单元格就按相关的记算方法直接得出相应的数据!是onexit吗?

解决方案 »

  1.   

    你冯叔叔睡觉去了吧呵呵没分贴,给点思路你试试(等你冯叔叔代码搞出来,你再就他的。我这只是帮你顶一下,既使加分我也不要。)procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);//会闪烁的,呵呵
    begin
      With StringGrid1 do
           Cells[3,ARow] := Cells[1,ARow] + Cells[2,ARow] ;
    end;
      

  2.   

    你冯叔叔睡觉去了吧呵呵
    ====
    冯叔叔年纪大了,没有你们那么好的瞌睡啊。 刚才去外面巡视去了。呵呵lihuasoft(学习低调做人)又在乱解答题目了。抓住OnDrawCell不分青红皂白的一通胡用。呵呵呵呵。 华哥哥不要又生气哈。
      

  3.   

    下面的演示是每一行的合计数写到本行的最后一个单元格。(输入后敲2次回车表示确认)procedure TFormDemo.StringGridGetEditText(Sender: TObject; ACol,
      ARow: Integer; var Value: String);
    begin
      with StringGrid do
      begin
        try
          StrToFloat(Value);
          Cells[Pred(ColCount), ARow] := FloatToStr(StrToFloat(Cells[Pred(ColCount), ARow])+StrToFloat(Value));
        except
        end;
      end;
    end;procedure TFormDemo.FormCreate(Sender: TObject);
    var
      iRow: Integer;
    begin
      with StringGrid do
      begin
        for iRow := FixedRows to Pred(RowCount) do
          Cells[Pred(ColCount), iRow] := '0';
      end;
    end;
      

  4.   

    你可以把算法再精细一下,修改成和EXCEL一样的二维计算效果。