Diese Klasse
Delphi-Quellcode:
TMyListView = class(TCustomListView)
private
FThumbnailThread: TThumbnailThread;
protected
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure TreeUpdate(NewRoot: PItemIDList);
benutzt einen TThread (TThumbnailThread) wie man sieht. Ich verstehe nicht, warum ich im Konstruktor von TMyListView auf sämtliche Methoden des Threades zugreifen kann und in TreeUpdate eine Zugriffsverletzung bekomme.
Delphi-Quellcode:
procedure TMyListView.TreeUpdate(NewRoot: PItemIDList);
begin
if (NewRoot <> nil) then
begin
FThumbnailThread.Suspend; //HIER ZUGRIFFSVERLETZUNG!!!
end;
end;
Hier noch die Thread-Klasse (Standard):
Delphi-Quellcode:
TThumbnailThread = class(TThread)
private
FListView: TMyListView;
protected
procedure Execute; override;
public
constructor Create(const ListView: TMyListView);
destructor Destroy; override;
end;
Der Thread läuft übrigens. (Endlos Schleife mit Sleep(1000)) Nur diese blöde Zugriffsverletzung, die ich ziemlich unlogisch finde..
DANKE!