Registriert seit: 7. Jun 2003
7 Beiträge
Delphi 7 Professional
|
16. Jun 2003, 14:23
Also , die Units sehen bei mir so aus . Falls daran im Aufbau was falsch ist , bitte korrigiert mich .
mFigur(Basisklasse) :
Delphi-Quellcode:
unit mFigur;
interface
uses mSum;
type
TFigur = class
hatpen : buntstift;
zXpos,zYpos,zGeschw,zRadius,zAbstand : Zahl;
zFarbe : GanzeZahl;
constructor init(pXpos,pYpos,pGeschw,pRadius,pAbstand : Zahl;pFarbe : GanzeZahl); virtual;
procedure zeichne;
procedure loesche;
procedure bewege; virtual; abstract;
destructor gibfrei;
end;
implementation
constructor TFigur.init(pXpos,pYpos,pGeschw,pRadius,pAbstand : Zahl;pFarbe : GanzeZahl);
BEGIN
hatpen := buntstift.init;
zXpos := pXpos;
zYpos := pYpos;
zGeschw := pGeschw;
zRadius := pRadius;
zAbstand := pAbstand;
zFarbe := pFarbe;
//erste Anweisungen
hatpen.setzeFarbe(zFarbe);
hatpen.setzeFuellMuster(gefuellt);
hatpen.hoch;
hatpen.bewegeBis(zXpos,zYpos);
END;
procedure TFigur.zeichne;
BEGIN
hatpen.zeichneKreis(zRadius);
END;
procedure TFigur.loesche;
BEGIN
zeichne;
hatpen.radiere;
zeichne;
hatpen.normal;
END;
destructor TFigur.gibfrei;
BEGIN
hatpen.gibFrei;
END;
end.
mPlanet :
Delphi-Quellcode:
unit mPlanet;
interface
uses mSum,mFigur,mSonne;
type
TPlanet = class(TFigur)
zJahr : Zahl;
kSonne : TSonne;
constructor init(pkSonne : TSonne;pAbstand,pGeschw,pRadius : Zahl;pFarbe: GanzeZahl); overload;
procedure bewege; override;
end;
implementation
constructor TPlanet.init(pkSonne : TSonne;pAbstand,pGeschw,pRadius : Zahl;pFarbe: GanzeZahl);
BEGIN
hatpen := buntstift.init;
kSonne := pkSonne;
zAbstand := pAbstand;
zGeschw := pGeschw;
zFarbe := pFarbe;
zRadius := pRadius;
zXpos := kSonne.zXpos;
zYpos := kSonne.zYpos;
hatpen.setzeFarbe(zFarbe);
hatpen.setzeFuellMuster(gefuellt);
hatpen.hoch;
hatpen.bewegeBis(zXpos,zYpos);
END;
procedure TPlanet.bewege;
BEGIN
hatpen.bewegeUm(zAbstand);
inherited zeichne;
warte(10);
inherited loesche;
hatpen.bewegeUm(-zAbstand);
hatpen.dreheUm(zGeschw);
IF (hatpen.winkel = 360) OR (hatpen.winkel = 0 ) then zJahr := zJahr + 1 ;
END;
end.
mSonne :
Delphi-Quellcode:
unit mSonne;
interface
uses mSum,mFigur;
type
TSonne = class(TFigur)
constructor init(pXpos,pYpos,pRadius : Zahl;pFarbe : GanzeZahl); overload;
procedure bewege; override;
end;
implementation
constructor TSonne.init(pXpos,pYpos,pRadius : Zahl;pFarbe : GanzeZahl);
BEGIN
hatpen := buntstift.init;
zXPos := pXpos;
zYpos := pYpos;
zRadius := pRadius;
zFarbe := pFarbe;
hatpen.setzeFarbe(zFarbe);
hatpen.setzeFuellMuster(gefuellt);
hatpen.hoch;
hatpen.bewegeBis(zXpos,zYpos);
END;
procedure TSonne.bewege;
BEGIN
inherited zeichne;
END;
end.
[edit=Daniel B]Delphi-Tags eingefügt. MfG Daniel B.[/edit]
|
|
Zitat
|