Diese Form der Methodenaufruf nur für Klassenmethoden Fehler
Ich bekomme immer diese Fehlermeldung. Auf FGetZoneData
ich habe:
var
SelectedDept: String;
implementation
procedure TFGetZoneDept.GetClick1(Sender: TObject);
var
azone: string;
adept: string;
bstats,
bname,
btop,
bleft,
bnumber,
basset: string;
machine : TMachine;
begin
fdb.count := 0; //keeps track of number of machines in zone
azone := Combobox1.Text; //gets name of zone
adept := TfDB.GetDeptDBName(SelectedDept); //gets name of dept from a function
fdeptlayout.ListBox1.Clear;
end;
und auf TFdB
ich habe eine deklarierte Funktion in der öffentlichkeit:
public
Function GetDeptDBName(name :string):String;
end;
Eine Idee warum das nicht funktionieren würde?
- rufen Sie
adept := fdb.GetDeptDBName()
statt. AufrufTfDB.GetDeptDBName()
übernimmt eine Klasse Methode. - Dank machen Antwort und ich kann das akzeptieren... nicht sicher, wie ich verpasst,..aber ich denke, es passiert
- ain geantwortet hat schon richtig. Keine Notwendigkeit zu duplizieren seine Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bist du den Aufruf der Methode einer Klasse (ich gehe davon aus
TfDB
ist der name einer Klasse) nicht auf eine Instanz. Nur Klasse Methoden kann genannt werden, dass Art und Weise. Was Sie tun müssen ist, eine Instanz zu schaffen, dann rufen die Methode auf:Sehen die E2076 Diese form des Methodenaufrufs erlaubt, nur für die Klasse Methoden Thema im docwiki.