Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Komponente vertikal verschieben

  Alt 9. Apr 2007, 09:36
Hi,

mit dem Timer ist ja nicht gerade optimal, würde es nicht auch so gehen?

Delphi-Quellcode:
procedure TForm1.BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if Sender is TBitBtn then
    TBitBtn(Sender).Tag := Y;
end;

procedure TForm1.BitBtn1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  NewPos: integer;
const
  MinTop = 10;
  MaxTop = 300;
begin
  if Sender is TBitBtn then
    if ssLeft in Shift then
    begin
      NewPos:= TBitBtn(Sender).Top + Y - TBitBtn(Sender).Tag;
      if (NewPos > MinTop) and (NewPos < MaxTop) then
        TBitBtn(Sender).Top:= TBitBtn(Sender).Top + Y - TBitBtn(Sender).Tag;
    end;
end;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat