Drag&Drop z Label do Edit ?

Odpowiedz Nowy wątek
2007-10-25 10:05

Rejestracja: 12 lat temu

Ostatnio: 11 lat temu

0

Witam, czy istnieje możliwość (czy to wykonalne) aby przenieść tekst z Label1.Caption za pomocą funkcji Drag&Drop do pola Edit1.Text ?

Pozostało 580 znaków

2007-10-25 11:45

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

Lokalizacja: Helsingør / FZ

0
procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
      if ssLeft in Shift then TLabel(Sender).BeginDrag(FALSE);
end;

procedure TForm1.Edit1DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
      Accept := Sender <> Source;
end;

procedure TForm1.Edit1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
      TEdit(Sender).Text:=(TLabel(Source).Caption);
end;

procedure TForm1.Label1EndDrag(Sender, Target: TObject; X, Y: Integer);
begin
      if Target = nil then MessageBeep(MB_IconError);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
      Label1.Cursor:=crDrag;
end;

Pozostało 580 znaków

2007-10-25 14:54

Rejestracja: 17 lat temu

Ostatnio: 7 lat temu

0

Chyba można by się obyć bez pierwszej i ostatniej procki, ustawiając dmAutomatic, i DragCursor w IDE. Poza tym:
TEdit(Sender).Text:=(TLabel(Source).Caption);
nie jest jakimś bardzo wyrafinowanym rozwiązaniem pod względem sprawdzania zgodności typów, dla świętego spokoju dorzucił bym If Source is TLabel ....

Oczywiście jak napisałeś to tylko żeby pokazać jak, to wporzo.

Dorzuciłem swoje 3 grosze żeby później gość nie szukał błędów, jak mu się zachce przenosić z innego edita do tego : )

Pozostało 580 znaków

2007-10-25 15:26

Rejestracja: 14 lat temu

Ostatnio: 2 lata temu

Lokalizacja: Helsingør / FZ

0

Tylko nie każ mi oddawać potem tych 3 groszy. ;-P
To co napisałeś to też może być.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0