Die Mousekoordinaten beziehen sich auf den ganzen Bildschirm, Du musst mit ScreenToClient umrechnen ...
Delphi-Quellcode:
procedure TForm3.StringGrid1DblClick(Sender: TObject);
var Col, Row: integer;
p:TPoint;
begin
p := TControl(Sender).ScreenToClient(Point(Mouse.CursorPos.X,Mouse.CursorPos.Y));
StringGrid1.MouseToCell(p.X,p.Y,Col,Row);
if Col<9 then begin
end;
end;