segun tu me planteas el problema supongo que tu haces una busqueda por un query antes de modificarlo, lo que tienes que hacer es lo siguiente puedes modificar un registro o con un query utilizando sql. o con un table. si utilizas query lo que tienes que hacer poner un boton y en el caption le pones modificar y luego agegas un sql de la opcion bde luego en la propiedad databasename le pones o el arias o la direcciion de la base de datos y en la propiedad sql escribes select * from (nombre de la base de datos).dbf
luego en el boton de modificar solo debes de poner
query1.sql.clear;
query1.sql.Append('update from nombre de la base de datos where nombre="'+edit1.text+' " '); //en esta sentencia sql se modificara el registro cuyo nombre sea igual a un edit1.text lo que debes hacer es que cuando hagas la busqueda para asignarselo al dbgrid tienes que asignarle al edit1.caption:=query1nombre.asstring;
query1.ExecSQL;
y para modificar por un table solo debe de agregar el componente table hacer la busqueda y luego en modificar solo debes de poner
WHILE NOT Table1.Eof DO BEGIN
IF Table1nombre.AsString = Edit1.Text THEN BEGIN
Table1.Edit;
Table1APELLIDO.AsString:= Edit2.Text;
//y asi escribe todos los registro que quieras modificar
Table1.Append;
exit;
END;
Table1.Next;
END;
si todavia tienes algun problema puedes
escribirme a las sigtes direcciones
elcazador18@hotmail.como si quieres me manda al programa a la direccion que te di y yo te hago esa parte de modificar