unit
Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm1 =
class
(TForm)
StringGrid1: TStringGrid;
Edit1: TEdit;
procedure
StringGrid1EndDrag(Sender, Target: TObject; X, Y:
Integer
);
procedure
FormCreate(Sender: TObject);
procedure
FormDockOver(Sender: TObject; Source: TDragDockObject; X,
Y:
Integer
; State: TDragState;
var
Accept:
Boolean
);
procedure
StringGrid1MouseActivate(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y, HitTest:
Integer
;
var
MouseActivate: TMouseActivate);
private
public
i, j :
integer
;
end
;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure
TForm1
.
FormCreate(Sender: TObject);
var
i, j :
byte
;
begin
for
i :=
1
to
3
do
for
j :=
1
to
3
do
StringGrid1
.
Cells[i, j]:=IntToStr(i*j);
end
;
procedure
TForm1
.
FormDockOver(Sender: TObject; Source: TDragDockObject; X,
Y:
Integer
; State: TDragState;
var
Accept:
Boolean
);
begin
Accept:=
True
;
end
;
procedure
TForm1
.
StringGrid1EndDrag(Sender, Target: TObject; X, Y:
Integer
);
begin
Edit1
.
Text:=StringGrid1
.
Cells[J, I];
end
;
procedure
TForm1
.
StringGrid1MouseActivate(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y, HitTest:
Integer
;
var
MouseActivate: TMouseActivate);
begin
StringGrid1
.
MouseToCell(X, Y, J, I);
end
;
end
.