Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Flips,
14. Sep 2007
procedure TForm3.StringGrid1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var acol,arow:integer;
begin
if Button = mbLeft then
StringGrid1.MouseToCell(X,Y,acol,arow);
if (ACol <> -1) and (ARow <> -1) then
Stringgrid1.BeginDrag(True);
end;
procedure TForm3.StringGrid2DragDrop(Sender, Source: TObject; X, Y: Integer);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Flips,
14. Sep 2007
Hi,
also ich verstehe das so das du immer nur den Wert der 3. Zelle der Zeile draggen willst, auch wenn in der Zeile das Drag&Drop beispielsweise über der 2. Zelle der Zeile begonnen wurde.
Dafür brauchst du nur die Nummer zu ändern:
procedure TForm3.Edit1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
(Sender as TEdit).Text := (Source as TStringGrid).Cells;
//Die 3 steht für...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Flips,
6. Sep 2007
Hi.
Du musst die DragDrop-Handler der Edit-Komponente und die Mousedown-Komponente des Stringgrids nehmen.
procedure TForm3.Edit1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
(Sender as TEdit).Text := (Source as TStringGrid).Cells;
end;
procedure TForm3.Edit1DragOver(Sender, Source: TObject; X, Y: Integer;