Einzelnen Beitrag anzeigen

Benutzerbild von leddl
leddl

Registriert seit: 13. Okt 2003
Ort: Künzelsau
1.613 Beiträge
 
Delphi 2006 Professional
 
#20

Re: myGolfplatzmanager

  Alt 6. Apr 2005, 15:46
Ich hab schon lang nix mehr in S/W gedruckt, aber normalerweise müßten doch auch farbige Drucke in S/W lesbar sein, oder?
Das mit dem direkt Editieren hab ich jetzt auch aufgegeben. Da ist einfach zuviel Fehlerpotential enthalten.

Die Struktur, die du vorgeschlagen hast, ist doch ok. Ich würd das dann so umsetzen: (Die Implementierung is dann natürlich deine Sache! Is außerdem Geschmackssache, ob man das so macht. Ich habs mir so angewöhnt und benutz das auch recht gerne in der Art)
Delphi-Quellcode:
type
  THole = record
    Length, PAR, HCP : Integer;
End;

type
  TTee = class
  private
    fSlope : Integer;
    fCR : Double;
    fHoles : Array of THole;
    function getHolesCount : Integer;
    function getSlope : Integer;
    function getCR : Double;
    function getHole(Index : Integer) : THole;
    procedure setSlope(ASlope : Integer);
    procedure setCR(ACR : Double);
  public
    property HolesCount : Integer read getHolesCount;
    property Slope : Integer read getSlope write setSlope;
    property CR : Double read getCR write setCR;
    property Holes[Index : Integer] : THole read getHole;

    function AddHole(AHoles : THole) : Boolean;
    function EditHole(Index, ALength : Integer; ACR : Double) : Boolean;
    function DeleteHole(Index : Integer) : Boolean;
    function SetHoles(AHoles : Array of THole) : Boolean;

    constructor Create;overload;
    constructor Create(AHoles : Array of THole;ASloap : Integer = 0;
                       ACR : Double = 0);overload;
    destructor Destroy;
End;

type
  TGolfCourse = class
  private
    fTees : Array of TTee;
    function getTeeCount : Integer;
    function getTee(Index : Integer) : TTee;
  public
    property TeeCount : Integer read getTeeCount;
    property Tees[Index : Integer] : TTee read getTee;

    function Save(FileName : String) : Boolean;
    function Load(FileName : String) : Boolean;

    constructor Create;
    destructor Destroy;
End;
Is jetzt nur gschwind dahingeschustert und nur als Idee gemeint. Falls du bereits ne bessere Struktur hast, dann vergiß es einfach. So würde ich das auf jeden Fall machen.

Falls du dazu noch Fragen hast, dann meld dich, oder schau mal hier: http://www.luckie-online.de/Tutorials/

Achso, jetzt hätt ich fast deine letzte Frage vergessen... Ich würde das so ähnlich machen wie bisher (wobei ich mich von soviel Editfeldern immer ganz erschlagen fühle ), nur daß du den Teil mit den Abschlägen rechts wegläßt. Also heißt der Button auch nicht mehr "Platz bearbeiten", sondern "Abschlag hinzufügen". Existiert noch kein Abschlag, dann sind die Editfelder leer, ansonsten werden zB die Werte des ersten Abschlags voreingefüllt. So reicht es, nur die Unterschiede auszufüllen.

PS: Meine Güte, man sieht echt, daß ich die Idee gut find. So hab ich mich schon lang nich mehr reingehängt!
Axel Sefranek
A programmer started to cuss, cause getting to sleep was a fuss.
As he lay there in bed, looping round in his head
was: while(!asleep()) ++sheep;
  Mit Zitat antworten Zitat