Einzelnen Beitrag anzeigen

AddiDelphi

Registriert seit: 19. Mär 2010
18 Beiträge
 
#13

Re: Frage zu Shapes: Shape2 soll Shape1 abblocken/reflektier

  Alt 20. Mär 2010, 18:11
Zitat von DeddyH:
Da ich Deine "Ball"-Klasse nicht kenne, kann ich Dir das auch nicht sagen. Aber anscheinend benutzt Du ein Shape, um den Ball zu zeichnen, also musst Du dann dessen Koordinaten zur Berechnung hernehmen.
Das ist die mTBall:
Delphi-Quellcode:
UNIT mtBall;

interface

//-------------------- ggf Uses-Liste einfügen ! --------------------
uses graphics;

type
  TBall = class

  private //Attribute
    X : Integer;
    Y : Integer;
    Farbe : TColor;

  public //Methoden
    procedure bewege (px,py: Integer); virtual;
    procedure SetzeFarbe (pFarbe: TColor); virtual;
    procedure SetzeX (pX: Integer); virtual;
    procedure SetzeY (pY: Integer); virtual;
    function GibFarbe : TColor; virtual;
    function GibX : Integer; virtual;
    function GibY : Integer; virtual;
    

   end;

implementation

//+---------------------------------------------------------------------
//| TBall: Methodendefinition
//+---------------------------------------------------------------------

//-------- bewege (public) ---------------------------------------------
procedure TBall.bewege (px,py: Integer);
begin
  x:=x+px;
  y:=y+py;
end;


//-------- SetzeFarbe (public) -----------------------------------------
procedure TBall.SetzeFarbe (pFarbe: TColor);
begin
  Farbe := pFarbe
end;

//-------- SetzeX (public) ---------------------------------------------
procedure TBall.SetzeX (pX: Integer);
begin
  X := pX
end;

//-------- SetzeY (public) ---------------------------------------------
procedure TBall.SetzeY (pY: Integer);
begin
  Y := pY
end;

//-------- GibFarbe (public) -------------------------------------------
function TBall.GibFarbe : TColor;
begin
  result := Farbe
end;

//-------- GibX (public) -----------------------------------------------
function TBall.GibX : Integer;
begin
  result := X
end;

//-------- GibY (public) -----------------------------------------------
function TBall.GibY : Integer;
begin
  result := Y
end;

end.
Und das ist die mTBrett (Schläger):
Delphi-Quellcode:
UNIT mTBrett;

interface

//-------------------- ggf Uses-Liste anpassen ! --------------------
uses Graphics;

type
  TBrett = class


  private //Attribute
    a : Integer;
    b : Integer;
    Farbe : TColor;

  public //Methoden
    procedure Bewegebrett (pa,pb: Integer); virtual;
    procedure SetzeA (pA: Integer); virtual;
    procedure SetzeB (pB: Integer); virtual;
    function GibA : Integer; virtual;
    function GibB : Integer; virtual;

   end;

implementation

//+---------------------------------------------------------------------
//| TBrett: Methodendefinition
//+---------------------------------------------------------------------

//-------- Bewegebrett (public) ---------------------------------------------
procedure TBrett.Bewegebrett (pa,pb: Integer);
begin
  a:=a+pa;
  b:=b+pb;
end;

//-------- SetzeA (public) ---------------------------------------------
procedure TBrett.SetzeA (pA: Integer);
begin
  a := pa
end;

//-------- SetzeB (public) ---------------------------------------------
procedure TBrett.SetzeB (pB: Integer);
begin
  b := pB
end;

//-------- GibA (public) -----------------------------------------------
function TBrett.GibA : Integer;
begin
  result := a
end;

//-------- GibB (public) -----------------------------------------------
function TBrett.GibB : Integer;
begin
  result := b
end;






end.
Bitte hilf mir auf die Sprünge und sag mir was ich einfügen muss, alleine ohne Lösung wird das nix bei mir
Wäre gern ein guter Programmierer
  Mit Zitat antworten Zitat