case mNodeSelLev of
  NL_Main:
    begin
      //显示所有数据
      ShowNutTempInfo(TVNutInfo.Items.GetFirstNode);
    end;
  NL_SubStation:
    begin
      PNode := Pointer(Node.Data);
      LoadStationMap(PNode^.StationName);
      ShowNutTempFrmSubID(Node, PNode^.ID);
    end;
  NL_Equipment:
    begin
      PNode := Pointer(Node.Data);
      ShowNutTempFrmEquID(Node, PNode^.ID);
    end;
  NL_Nut:
    begin
      ClearStrGrd(StrGrdSut);
      PNutInfo := Pointer(Node.Data);
      if PNutInfo<>nil then//这个是个结构体
      begin
        with StrGrdSut do
        begin
          Cells[1, 1] := inttostr(PNutInfo^.ScrewNutInfo.ID);
          Cells[2, 1] := PNutInfo^.ScrewNutInfo.Name;          if PNutInfo^.ScrewNutInfo.LastTmp >= PNutInfo^.ScrewNutInfo.FirstClassAlarmTmp then
          begin
            ob:=1;//ob是整型局部变量
          end
          else
          begin
            ob:=0;
          end;
          StrGrdSut.Objects[3, 1]:=TObject(ob);//重点是这里什么意思呀?          Cells[3, 1] := Format('%d ℃', [PNutInfo^.ScrewNutInfo.LastTmp]);
          //Cells[4, 1] := DateTimeToStr(Now);
        end;
        StrGrdSut.Font.Color:=clblack;
      end;
    end;
  end;

解决方案 »

  1.   

    StrGrdSut.Objects二维数组,给StrGrdSut.Objects[3, 1]这个数组元素赋值
      

  2.   

    strGrdsut 是个 TStringGrid控件。其中  Object 用法是什么?》
      

  3.   

    Objects[3, 1]是一个TObject类型TObject(ob)就把是ob类型强制转换成TObject,以便和StrGrdSut.Objects[3, 1]类型兼容
      

  4.   

    那 ob =0 ; 是不是代表这个单元格只读。
       ob =1 ; 代表这个单元格可写。
    是这样吗?