SelectRows返回的是选中的记录。(如果你把option的MultiSelect打开了的话)
你当前只选中了一条记录,Items的Count只有1,当然越界啦!~如果你是要第二个字段的值,那么是这样的:
Edit5.Text := DBGrid.Fields[1].AsString;

解决方案 »

  1.   

    我寫dbgrid1.SelectedRows.Items[1]的本意是选中了一条记录的第二個字段的值,難到dbgrid1.SelectedRows.Items[1]的意思是Items的Count只有1 ???
      

  2.   

    你的selecterows.items[1]里已经规定只能在第二列(既第二个字段列)里点击。
    而且你放的过层也错了,在dbgrid1colenter里,只在你点击换字段列时才响应的。
    procedure tstaffform.dbgrid1cellclick(sender:tobject);
    begin
    edit5.text:=dbgrid1.selectedfield.asstring;
    end;