![]() |
Construktor erfordert TComponent, obwohl nicht verlangt
Guten Morgen!
Ich habe ein Problem mit meinem Programm, ich muss nämlich für die Schule ein Roulettespiel in OOP programmieren, ich habe mir ein bisschen mehr Design und Funktionen zugetraut und habe eben shcön programmiert. Folgendes Problem tritt bei dieser Klasse auf:
Delphi-Quellcode:
Wobei dazu zu sagen ist, sie ist noch nicht fertig, was in dem Fall aber nicht schlimm ist!
unit USpielbrett;
interface type TSpielbrett=class (TObject) private einsatz_p: array [1..3] of integer; public constructor create; procedure setplein(k, betrag: integer); function getplein(k: integer): integer; end; implementation constructor TSpielbrett.create; var i: integer; begin for i:=1 to 3 do einsatz_p[i]:=0; end; procedure TSpielbrett.setplein(k, betrag: integer); begin einsatz_p[k]:=0; end; function TSpielbrett.getplein(k: integer): integer; begin result:=einsatz_p[k]; end; end. Nur Delphi erwartet hier ständig, dass ich eine Varibale des Typs TComponent übergebe, obwohl das garnicht so deklariert ist? Liegt das daran, dass ich zwei Formulare habe, wenn ja, ich habe schon versucht den Namen des Formlars zu übergeben, hat aber auch nicht geklappt. Bitte helft mir, ich bedanke mich schon im Voraus! Gruß, Lithiumoxid |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Wo, wann erwartet Delphi das
Gib doch mal den gesamten Quellcode wo die Klasse benutzt wird |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Hallo,
das wird dann verlangt, wenn ich den Konstruktor aufrufe und eine Instanz der Klasse erstellen will mit
Delphi-Quellcode:
Nur Delphi sagt mit da muss eine Variable AOwner vom Typ TComponent übergeben werden, liegt das daran, dass ich zwei Formulare hab?
Kessel:= TKessel.create;
Konto:= TKonto.create(100); Spielbrett:=TSpielbrett.Create(); Gruß, Lithiumoxid |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Und bei welchem der 3 Konstruktoraufrufen?
|
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Hallo,
beim dritten, das ist die Klasse, die ich oben angegeben hab... |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Wo sagt Delphi was, bzw. sollen wir uns nun eine der 3 Create/Zeilen aussuchen?
Und wie sehen TKessel/TKonto aus? [edit] Wie sagt Delphi das? Steht in den Compilerwarnungen genau diese Zeile oder steht nur zufällig der Cursor dort? (manchmal meint Delphi die Zeile überm Cursor) |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Hallo,
bei TKessel und TKonto liegt es definitiv nicht denke ich, weil da der constructor-Aufruf ganz normal war, allerdings bekomme ich beim Spielbrett immer drei Möglichkeiten zur Auswahl, obwohl ich garkeinen Parameter zur Übergabe programmiert habe. Als Fehlermeldung sagt er mir: Inkompatible Typen: TComponent mit "ClassReference" . |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Kann es ein, dass es mehrer Variablen mit der Bezeichnung Spielbrett gibt bzw. das diese den falschen Typ hat?
|
AW: Construktor erfordert TComponent, obwohl nicht verlangt
Ja, das könnte sein, ich hab es gefunden, mal schauen, was passiert, wenn ich es ändere...
EDIT: ja es funktioniert :D DANKE! Vielen Dank! |
AW: Construktor erfordert TComponent, obwohl nicht verlangt
ich denke mal
Spielbrett:=TSpielbrett.Create(nil); oder Spielbrett:=TSpielbrett.Create(self); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz