Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - [Fehler] ... : Klasse besitzt keine Standardeigenschaft


hassedelphi - Di 12.08.03 09:37
Titel: [Fehler] ... : Klasse besitzt keine Standardeigenschaft
hallo

ich habe wie zu sehen einen eigenen datentyp erstellt:


Delphi-Quelltext
1:
2:
3:
type Tstoffart = record
  az : string;
  end;


später dann das:


Delphi-Quelltext
1:
var stoff : array [1..8of Tstoffart; fe,fl,gas : string;                    


noch später dann das:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure aggrzustand;
var i : integer;
begin
 for i := 1 to 8 do
  begin
   with stoff[i] do
    begin
     if T1[k[i]] < Ts[k[i]] then az := fe;
     if T1[k[i]] > Tv[k[i]] then az := gas;
     if (T1[k[i]] > Ts[k[i]]) and (T1[k[i]] < Tv[k[i]]) then az := fl;
    end;
  end;
end;


und zu guter letzt wollte ich über einen button click guken, ob's funzt:

Delphi-Quelltext
1:
2:
 aggrzustand;
 if stoff[1].az = fe then showmessage('fe');


jetzt zeigt mir der compiler an:
[Fehler] Unit1.pas(182): Klasse besitzt keine Standardeigenschaft

daraufhin bin ich in die delphi hilfe gegangen, die mir irgendwas vonwegen b und array gesagt hat. das problem ist nur, dass stoff[] doch als array dek. wurde, und az 'ne eigenschaft ist.

desshalb würde ich gern wissen warum die *mist*e nicht funzt.
kann jmd helfen? :puke:


Keldorn - Di 12.08.03 09:50

was ist T1[k[i]] ?

Zitat:

Fehler] Unit1.pas(182): Klasse besitzt keine Standardeigenschaft

schön, welche Zeile ist denn das in deinem gepostetem Code?

Mfg Frank


hassedelphi - Di 12.08.03 09:53

Keldorn hat folgendes geschrieben:


schön, welche Zeile ist denn das in deinem gepostetem Code?

Mfg Frank


oh sorry vergessen
das ist die letzte im buttonevent

Delphi-Quelltext
1:
if stoff[1].az = fe then showmessage('fe');                    


Keldorn - Di 12.08.03 09:58

also bei mir geht das
hast du stoff irgendow doppelt deklariert?


hassedelphi - Di 12.08.03 11:50

alles klar, hab den fehler.

stoff1 hieß bei mir schon 'ne komponente. danke für den tipp. aber warum ist stoff1 = stoff[1]? naja egal jetzt weiß ich's

thx :D :D :!:


Anonymous - Di 12.08.03 15:43

es liegt daran, dass der compiler eben die komponente nimmt, weil sie zuerst deklariert ist (irgendwo in deinem Formular)