http://expert.csdn.net/Expert/topic/2659/2659083.xml?temp=.4023554

解决方案 »

  1.   

    ShowModal;
      Edit1.Text :=
      ADODataSet1.FieldByName(DBGrid1.Columns.Items[1].FieldName).AsString;//把在窗体B上选择的结果给窗体A的一个Edit里你這種問題, 一般自己調試下就可出來了
     加上  ShowModal;
      ShowMessage(DBGrid1.Columns.Items[1].FieldName);
      ShowMessage( ADODataSet1.FieldByName(DBGrid1.Columns.Items[1].FieldName).AsString;從語法上是看不出問題的, 只能從邏輯上找找問題了! 也可能你的 窗體的OnClose關掉了Dataset, 也可能是你 對錯Columns
      

  2.   

    我用ShowMessage( ADODataSet1.FieldByName(DBGrid1.Columns.Items[1].FieldName.AsString);是可以的
    就是赋不到EDIT里
      

  3.   

    楼主的Txuanzechanpinxinghaofm窗体上是否也有Edit1,如果有,那么
     With afm do
      begin
      ShowModal;
      Edit1.Text :=
      ADODataSet1.FieldByName(DBGrid1.Columns.Items[1].FieldName).AsString;//把在窗体B上选择的结果给窗体A的一个Edit里
      Free;
      end;
    由于你的  
    Edit1.Text := ADODataSet1.FieldByName(DBGrid1.Columns.Items[1].FieldName).AsString;//
    写在with中,所以是赋给了afm.Edit1.Text
      

  4.   

    xyc绝对是高手,就是这样的:赋给了afm.Edit1.Text,我就没有查出来!
    谢谢