Einzelnen Beitrag anzeigen

Benutzerbild von igel457
igel457

Registriert seit: 31. Aug 2005
1.622 Beiträge
 
FreePascal / Lazarus
 
#2

Re: [Andorra] kleine Rechenprobleme

  Alt 6. Aug 2008, 17:37
Du verwendest nirgends in deinem Code das errechnete "p". Verwendest du also "p.x" und "p.y" anstatt "x" und "y" sollte es funktionieren.

Hier noch ein Codeausschnitt, wie das mit dem Verschieben normalerweise gemacht wird (ohne Umrechnung):
Delphi-Quellcode:
var
  lx, ly: integer;

procedure MouseDown(X, Y: integer);
begin
  lx := x;
  ly := y;
end;

procedure MouseMove(Shift: TShiftState; X, Y: integer);
begin
  if ssLeft in Shift then
  begin
    item.x := item.x + (x - lx);
    item.y := item.y + (y - ly);
    lx := x;
    ly := y;
  end;
end;
Andreas
"Sollen sich auch alle schämen, die gedankenlos sich der Wunder der Wissenschaft und Technik bedienen, und nicht mehr davon geistig erfasst haben als die Kuh von der Botanik der Pflanzen, die sie mit Wohlbehagen frisst." - Albert Einstein
  Mit Zitat antworten Zitat