![]() |
Delphi-Version: 11 Alexandria
Kein Zugriff auf privates Symbol
Hi zusammen
Die Deklaration:
Delphi-Quellcode:
Der Zurgriff:
private { Private-Deklarationen }
FInsertPdfDocument : TInsertPdfDocument; FReportList: TStringList; FAppDataPath: string; FProjectPath: string; FOwnFolderList: TStringList; //<== FTextSelection: string; procedure ShowCategoryPanel(Sender: TObject); procedure WriteBookmarkMemo; procedure DoTextSelectionEvent(Sender: TObject; const ATextSelection: String); function projectfolder : String; { Public-Deklarationen } property OwnFolderList : TStringlist read FOwnFolderList write FOwnFolderList; //<=== property Appdatapath: String read FAppDataPath write FAppDataPath; end;
Delphi-Quellcode:
Die Fehlermeldung:
if OfficerAlexMain.OwnFolderList <> nil then //<== Fehler
begin if OfficerAlexMain.OwnFolderList.IndexOf(aRealName) <> -1 then begin Node.ImageIndex := 3; Node.SelectedIndex := 3; end end; Zitat:
Gruss Delbor |
AW: Kein Zugriff auf privates Symbol
Moin...8-)
Frage: 1. Breakpoint: if OfficerAlexMain.OwnFolderList.IndexOf(aRealName) <> -1 then -> kommt er da an? 2. Wo ist die OwnFolderList erzeugt? 3. Ist die OwnFolderList übergeben? 4. Gibt es keinen constructor der Klasse? -> zeigen. :wink: 5. Welchen Pointer Wert hat: OfficerAlexMain.OwnFolderList hier if OfficerAlexMain.OwnFolderList <> nil then // besser Assigned(OfficerAlexMain.OwnFolderList) :wink: Mein Gefühl sagt: OwnFolderList ist nicht "initialisiert". Da steht ein ungültiger Pointer. Lösung: Im constructor FOwnFolderList := nil setzen. PS: Zitat:
|
AW: Kein Zugriff auf privates Symbol
Das ist ein Fehler bei der Übersetzung, nicht zur Laufzeit. Mit einem Breakpoint wird er da nicht weit kommen. Des weiteren werden Felder einer Instanz automatisch initialisiert, eine Zuweisung von FOwnFolderList := NIL im Konstruktor ist also unnötig.
Was mir direkt auffällt: da steht im Kommentar vor der Eigenschaft OwnFolderList „Puplic-Declarationen“, aber es fehlt der Bezeichner public. Das kann so nicht funktionieren - zumindest nicht ausserhalb der Unit. Gruß |
AW: Kein Zugriff auf privates Symbol
Also wenn dein Code ein 1:1 copy & pizza pasta ist, dann fehlt da eindeutig "public".
![]() |
AW: Kein Zugriff auf privates Symbol
Hi zusammen
@completestranger und hotrs02 Zitat:
Delphi-Quellcode:
Kein Wunder, war das Property privat! Danke, completestranger!!
{ Public-Deklarationen }
property OwnFolderList : TStringlist read FOwnFolderList write FOwnFolderList; Gruss Delbor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 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