Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi AV bei Zugriff auf public einer Klasse (https://www.delphipraxis.net/135784-av-bei-zugriff-auf-public-einer-klasse.html)

Berlinermauer 17. Jun 2009 23:53


AV bei Zugriff auf public einer Klasse
 
Hi Leute.

Ich habe ein Problem, und zwar sobald ich von einer klasse etwas lesen oder schreiben will,
komme ich zu einer AV.

Ich könnte ja die Eigenschaften auch als VAR Deklarieren, aber ich denke Klassenintern wäre das schon besser.

Delphi-Quellcode:
type
    TMYColor = class
    public
    Red,Green,Blue: Array [0..100] of Byte;
    Color: TColor;
    procedure SetColor(ColorID: Integer);
    end;
Soo die SetColor macht eigentlich nichts anderes als
Delphi-Quellcode:
MYColor.Color := RGB(MYColor.Red[Colorid],MYColor.Green[colorid],MYColor.Blue[colorid]);
.

Mein Problem ist also,
dass ich nicht auf die Variabeln in dem public bereich von MyColor zugreifen kann

sx2008 17. Jun 2009 23:57

Re: AV bei Zugriff auf public einer Klasse
 
Du hast bestimmt vergessen, das Objekt zu erzeugen:
Delphi-Quellcode:
MyColor := TMYColor.Create;

Berlinermauer 17. Jun 2009 23:58

Re: AV bei Zugriff auf public einer Klasse
 
Ahh Danke, genau das ist es.
dh ich brauche mehr oder weniger eine Init Funktion die dann alle erzeugt.

Ich danke dir tausendfach :dp:

Bin noch nich soo gut in Delphi aber solangsam steig ich echt durch nur die AV's mag ich nicht :)

Kann mit den Adressen wenig anfangen.

Edit: Habs mir nich richtig durchgelesen irgendwie.
Hab verstanden, ich muss nicht die Properties Createn sondern nur die Klasse.

Im Grunde wie beim FileStream.

im var FileStream:TFileStream; und dann FileStream := TFileStream;

gut danke sehr


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:24 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