AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Funktion der übergeordneten Klasse aufrufen
Thema durchsuchen
Ansicht
Themen-Optionen

Funktion der übergeordneten Klasse aufrufen

Ein Thema von Tpercon · begonnen am 9. Dez 2003 · letzter Beitrag vom 9. Dez 2003
Antwort Antwort
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#1

Funktion der übergeordneten Klasse aufrufen

  Alt 9. Dez 2003, 19:42
Ich möchte eine Art Scrabble programmieren.

Dazu habe ich mir folgenden noch rein theoretischen Spielaufbau überlegt:
Delphi-Quellcode:
TSpielfeld = class
private
  Feld: array of array of TFeld;
...
public
  function FeldHatNachbar(x , y: integer) : boolean;
end;

TFeldStatus = (fsEmpty, fsWertx1, fsWertx2, fsWertx3);

TFeld = class
public
  Bild : TImage;
  Letter : char;
  Status : TFeldStatus;
...
end;
TSpielfeld wird global beim Programmstart erzeugt, im Create davon auch die einzelnen Felder.
Während der Laufzeit möchte ich im OnClick des TImage von Feld die anderen Feld Properties setzen und das TImage ändern, was ja alles kein Problem ist.
Nur wie rufe ich aus "TFeld.OnClick" heraus die Funktion FeldHatNachbar von TSpielfeld auf? Ist ja sozusagen dem übergeordnet. Sehe da irgendwie keinen Ansatz.

Wenn jemand nen besseren generellen Spielaufbau kennt, lass ich mich davon natürlich auch überzeugen. Ist ja alees noch Theorie.
  Mit Zitat antworten Zitat
mr2

Registriert seit: 3. Mai 2003
140 Beiträge
 
Delphi 2006 Enterprise
 
#2

Re: Funktion der übergeordneten Klasse aufrufen

  Alt 9. Dez 2003, 20:47
Hallo,

also erstmal solltest Du prinzipiell auf public Felder verzichten und statt dessen Properties verwenden.
Was das eigentliche Problem angeht, kannst Du ja einfach im Konstruktor von TFeld das Spielfeld als Owner übergeben und Dir in jedem TFeld merken. Dann wäre es allerdings sinnvoll TSpielfeld von TCollection und TFeld von TCollectionItem abzuleiten - dort ist die gesamte Grundfunktionalität schon implementiert. Schau Dich mal in der Delphi-Hilfe zu beiden Klassen um.
"... we know, there are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we don't know. But there are also unknown unknowns - the ones we don't know we don't know."
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#3

Re: Funktion der übergeordneten Klasse aufrufen

  Alt 9. Dez 2003, 22:15
Das sind natürlich in Wirklichkeit natürlich Properties, hatte es nur eben so hin geschrieben, da es weniger Schreibarbeit war.

Owner ist ne gute Idee, die Klassen TCollection und TCollectionItem schau ich mir morgen mal an.

Danke Dir schon mal!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz